Browsed by
[Category:] IT 개발

IT 개발 피드

[Linux] 재부팅 후 mysql 데몬이 자동으로 시작되지 않는 경우

[Linux] 재부팅 후 mysql 데몬이 자동으로 시작되지 않는 경우

얼마전 운영중인 서버를 일주일에 한번 재부팅 하도록 크론 설정 했습니다. 그런데 재부팅이 되고 나서 mysql 데몬이 시작되지 않아 물려 있는 웹사이트들이 DB 커넥션 에러를 뿜었습니다. 알아보니 부팅이되고나서 mysql 데몬이 돌지 않고 있었죠. 일단 mysqld 서비스를 시작시키고 찾기 시작했습니다. 어느 분들은 apache도 돌지 않는 경우도 있더군요. 이런 경우 원하는 서비스를 init.d에 등록해서 부팅시 서비스가 자동 시작하도록 설정해야합니다. 윈도우로 보면 시작프로그램에 등록한다고 보시면 되겠죠. # cd /etc/rc.d/init.c/ # /sbin/chkconfig –add mysqld # /sbin/chkconfig –level 345 mysql on # ./mysqld start chkconfig 명령어로…

Read More Read More

[CSS] 앨리먼트 요소 center 정렬 해결방법

[CSS] 앨리먼트 요소 center 정렬 해결방법

CSS 정렬에 있어서 각 요소의 width, height 값은 중요합니다. 이들이 없으면 상호간 정렬 또는 위치를 잡는데 애를 먹게 됩니다. parent라는 class를 가진 부모 DIV 앨리먼트가 child라는 class를 가진 자식 DIV 앨리먼트를 감싸고 있다고 가정합니다. 이때 흔히 고민하는 부분이 자식 앨리먼트를 어떻게 하면 center 정렬을 시킬 수 있을까 일겁니다. text-align? margin? padding? 요소를 정렬시키는데 있어 위 모두 사용할 수 있는 녀석들입니다. 하지만 그 이전에 각 요소의 사이즈를 정의해줘야 합니다. 사이즈를 지정하지 않고도 문제가 없다면 다른 브라우저로 테스트 해보십시오. 위치나 사이즈가 일그러지는…

Read More Read More

[API] 네이버 맵 API를 이용해 latlng 좌표 구해오기

[API] 네이버 맵 API를 이용해 latlng 좌표 구해오기

Google Map Api를 연동할땐 Map을 생성할때 주소값을 자동으로 내부에서 latlng좌표로 변환해줍니다. 그래서 따로 좌표값을 구해올 필요없이 Map 파라미터에 주소값을 넣어주는 것으로 간단하게 연동이 됐지만 네이버 Map API는 좀 다르네요. 직접 좌표를 구해서 구해온 값 중 필요한 데이터만 정제해서 좌표값을 넣어줘야 합니다. 덕분에 Curl도 써야하고 XML 파싱도 해야합니다. 이런 부분 때문에 연동하면서 Google Map Api와 비교를 하게 되네요. 그럼 네이버 Map API에서 제공하는 좌표구하는 방법을 소개해드립니다. (조금만 검색해보면 나오겠지만..) http://openapi.map.naver.com/api/geocode.php?key=[네이버맵API키]&encoding=utf-8&coord=tm128&query=[기준좌표주소] 네이버맵API키는 물론 네이버개발자센터에서 발급받은 맵 API 키를 뜻합니다. 기준좌표주소는 맵 API연동시…

Read More Read More

[JS] .js 파일에서 외부 js파일 가져오는 방법

[JS] .js 파일에서 외부 js파일 가져오는 방법

간혹 특수한 경우인데 따로 파일로 뺀 js파일안에 외부 js파일을 불러와야하는 상황이 생깁니다. 이런 경우에는 여러가지 방법이 있는데 그 중에서 가장 간단한 방법 한 가지를 소개합니다. #exam.js document.write(“<script type=’text/javascript’ src=’a.js’ ><” + “/script>”); js code.. 보시면 아시겠지만 아주 간단한 방법입니다. document.write를 이용한 방법이죠. 그 외의 여러 외부 js파일을 순차적으로 불러오거나하는 방법은 이 형태로는 불가능하고 다른 방법을 사용해야 합니다. 이 방법은 단지 순서에 상관없이 js파일을 불러와야하는 경우 사용됩니다.

[Codeigniter] is_file, file_exists 사용시 경로를 FALSE로 리턴하는 경우

[Codeigniter] is_file, file_exists 사용시 경로를 FALSE로 리턴하는 경우

PHP로 개발 하면서 파일의 유무를 알기 위해서 is_file이나 file_exists 를 많이 사용합니다. 코드이그나이터에서도 예외는 아니죠. 하지만 기존 PHP와 코드이그나이터에서 위 함수의 경로를 읽어들이는 방법이 다릅니다. PHP에서는 웹사이트의 도큐먼트루트를 참초해 파일을 찾지만 코드이그나이터에서는 HOME 디렉토리에서 부터 파일을 찾게 됩니다. 그러므로 기존 PHP에서 사용하던 is_file(‘/aaa/bbb/ccc.js’); 와 같은 코드를 코드이그나이터에서 그대로 쓰면 FALSE값을 리턴하게 됩니다. 코드이그나이터에서는 경로를 시스템루트에서부터 읽어 들이기에 경로부분을 조금 달리해야합니다. 코드이그나이터에서는 시스템루트에서 도큐먼트루트까지의 경로를 상수를 이용해 쉽게 구해올 수 있습니다, 제공되는 상수 중에서 FCPATH 라는 녀석입니다. 위 파일 경로에서 수정을…

Read More Read More

[MySQL] 스토리지 엔진 MyISAM에서 InnoDB로 변경하는 방법

[MySQL] 스토리지 엔진 MyISAM에서 InnoDB로 변경하는 방법

방법은 여러가지가 있지만 alter table 을 이용한 방법은 권장하지 않습니다. ex: Alter table ‘target_table’ engine = InnoDB; 위 방법은 환경에 따라서 데이터가 깨질 수도 있고 퍼포먼스가 떨어질 수도 있습니다. 가장 최적의 방법은 DB를 덤프 떠서 새로 생성하는 방법입니다. 1. mysqldump 명령으로 DB 덤프 백업 2. 덤프 파일 열어서 engine을 MyISAM에서 InnoDB로 변경 3. 기존 Database Drop (DB Drop이 힙들다면 Drop table로 테이블만 삭제) 4. Database를 Drop 했다면 다시 create database로 생성 5. 생성된 DB에 수정된 덤프파일 삽입 InnoDB와 MyISAM의 차이점들…

Read More Read More

[CSS] 웹폰트 적용하는 방법

[CSS] 웹폰트 적용하는 방법

기본 시스템 폰트가 아닌 일반 사용자 폰트로 웹을 표시해주는 것을 웹폰트를 적용한다라고 말합니다. 웹폰트는 @font-face를 이용해 클라이언트가 서버의 폰트를 다운받아 표시해줌으로써 클라이언트 PC에 해당 폰트가 없어도 웹사이트에서 제작자가 원하는 폰트로 사용자에게 보여줄 수 있습니다. 웹폰트 적용이 가능해진 이후로 디자이너들은 텍스트를 꾸미기 위해 이미지로 텍스트를 만드는 일이 크게 줄었습니다. 하지만 한글은 웹폰트를 적용하고도 알파벳처럼 깔끔하게 나오지 않아 아직까지 텍스트를 이미지로 만드는 경우가 꽤 있습니다. 원하는 폰트로 원하는대로 웹사이트에 표시를 할 수 있다고해서 단점이 없는것은 아닙니다.  클라이언트는 웹사이트의 텍스트를 읽어들이기위해 폰트파일을 다운로드…

Read More Read More

[MySQL] 랜덤 레코드 가져오기

[MySQL] 랜덤 레코드 가져오기

배너 또는 무작위로 데이터를 보여줘야하는 경우 사용하게 됩니다. SELECT * FROM TABLE ORDER BY RAND() LIMIT 2; 랜덤으로 가져오는 것을 정의하는 부분은 ORDER BY 절입니다. ASC나 DESC가 아닌 RAND()를 지정해주면 무작위로 정렬이 되게 됩니다. 무작위로 가져온 데이터를 2개만 가져오기 위해 LIMIT를 정의해줍니다.