Sphinx 검색 엔진을 서버에 설치하기 위해서는 관리자 권한(root)이 필요하기 때문에 단독 서버를
운영하는 경우가 아니라면 설치가 불가능합니다. 가상 서버에는 설치가 가능할 수도 있지만 600만건이
넘는 주소 데이트를 처리하기 위해서는 메모리 사용량이 많기 때문에 가상 서버에 설치하는 것은 힘들 것 같습니다.
설치 서버는 CentOS 5.x 환경이며 여타 서버 프로그램처럼 소스 컴파일을 통해 프로그램을 설치합니다.
설치 전 먼저 확인해야할 내용은 웹서비스를 위한 웹서버와 PHP, 주소 데이터 인덱싱을 위한 MySQL 또는
MariaDB 등의 DB서버 설치여부입니다. 이 두 서버가 서버에 먼저 설치되어 있다고 가정하고 진행하겠습니다.
여기서는 웹서버 등의 설치는 따로 설명하지 않습니다. juso.sir.co.kr 에서는 MariaDB 서버를 사용했습니다.
설치 서버의 MariaDB는 /usr/local/mariadb 경로에 설치되어 있습니다.
0. DB 서버 라이브러리 등록
Sphinx 설치와 주소 데이터 인덱싱을 위해서는 먼저 해당 서버에 DB 라이브러리에 접근할 수 있도록 설정이
되어 있어야 합니다. 그렇지 않으면 인덱싱 때 DB 서버에 연결하지 못하는 오류가 발생합니다.
아래와 같은 명령어를 실행해서 MariaDB 라이브러리를 등록해 줍니다.
[code]
# echo "/usr/local/mariadb/lib" > /etc/ld.so.conf.d/mariadb.conf
# ldconfig
[/code]
서버 환경이 다르다면 경로 등이 다를 수 있으니 서버 맞게 수정하셔서 실행해 주시면 됩니다.
1. Sphinx 설치
Sphinx 설치는 소스 다운로드 -> 컴파일 -> 설치 순으로 진행됩니다. 구축시 사용된 Sphinx 버전은 2.1.4이며
Sphinx 사이트를 방문하시면 최신 버전의 소스를 다운로드 할 수 있습니다.
[code]
# cd /usr/local/src
# wget http://sphinxsearch.com/files/sphinx-2.1.4-release.tar.gz
# tar zxvf sphinx-2.1.4-release.tar.gz
# cd sphinx-2.1.4-release
# ./configure --prefix=/usr/local/sphinx --with-mysql=/usr/local/mariadb
# make -j4
# make install
[/code]
설치는 여타 프로그램의 설치과정과 비슷합니다.
다음 장에서는 주소 데이터를 인덱싱하기 위해 도로명 주소 데이터 입력 방법을 다루겠습니다.
게시글 목록
| 번호 | 제목 |
|---|---|
| 20097 | |
| 20095 | |
| 20093 | |
| 20092 | |
| 20091 | |
| 20089 | |
| 20086 | |
| 20085 | |
| 20084 | |
| 20083 | |
| 20082 | |
| 28358 | |
| 20081 | |
| 20079 | |
| 20078 | |
| 20077 | |
| 20076 | |
| 20075 | |
| 20074 | |
| 20073 |
PHP
php환경 변수 출력 입니다.
|
| 20072 |
PHP
PHP팁 (보안 등) 입니다.
|
| 20071 |
PHP
문자열 자르는 함수 입니다.
|
| 20070 | |
| 20069 | |
| 8148 | |
| 20057 |
정규표현식
파싱 예제입니다.
11
|
| 8141 | |
| 24669 | |
| 20056 | |
| 8138 | |
| 28353 | |
| 20055 | |
| 20054 | |
| 20053 | |
| 20052 | |
| 20051 | |
| 20050 |
JavaScript
지난 시간 경과시간 페이스북 sns 처럼 보여주기 javascript 버전
|
| 20047 | |
| 20046 |
PHP
php환경맞춤 부분 입니다.
|
| 20045 | |
| 20044 | |
| 8111 | |
| 20043 | |
| 20042 | |
| 20040 | |
| 20039 |
JavaScript
구글 맞춤검색 설정 방법, google custom search
|
| 20037 | |
| 20036 | |
| 20035 | |
| 20027 |
MySQL
1000만건 게시판에 도전합니다. 두번째
7
|
| 8107 | |
| 31022 | |
| 20026 |
MySQL
Join 을 이용한 delete
|
| 20025 | |
| 20024 | |
| 20023 |
PHP
미리 정의된 변수들 입니다.
|
| 28350 | |
| 20022 | |
| 20018 |
MySQL
1000만건 게시판에 도전합니다. 첫번째
3
|
| 20017 |
MySQL
select 해서 바로 insert하기
|
| 8099 | |
| 20016 | |
| 20013 | |
| 8090 | |
| 20012 | |
| 20010 | |
| 20009 | |
| 19998 |
PHP
텔레그램 푸쉬 봇
10
|
| 28348 | |
| 28347 | |
| 19997 | |
| 19996 |
OS
파일분할 분할압축 해제
|
| 19995 |
웹서버
리눅스백그라운드실행
|
| 19993 | |
| 8087 | |
| 8065 | |
| 19990 | |
| 8063 | |
| 8056 | |
| 19989 | |
| 19988 | |
| 19987 | |
| 19986 | |
| 19985 | |
| 19984 | |
| 19983 | |
| 19982 |
MySQL
mysql에서 boolean 타입 사용하기
|
| 8054 | |
| 19981 | |
| 19980 | |
| 19979 |
MySQL
mysqladmin 상태 모니터링
|
| 19978 | |
| 19977 | |
| 19976 |
웹서버
리눅스 프로세스 검사, 조회
|
| 19975 |
웹서버
리눅스에서 네트워크 상태 보기
|
| 19974 |
웹서버
리눅스 80 포트 방화벽 열기
|
| 19973 | |
| 19972 |
MySQL
Mysql Table 일괄 삭제 방법.
|
| 19971 | |
| 19970 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기