天天看點

Centos環境下Sphinx的安裝 1 環境準備 2 安裝程式 3 mysql編碼設定

1 環境準備

系統環境CentOS6.4 

下載下傳軟體 

mysql-5.6.14.tar.gz 

下載下傳位址:http://101.110.118.67/cdn.mysql.com/archives/mysql-5.6/mysql-5.6.14.tar.gz 

sphinx-2.2.11-release.tar.gz 

下載下傳位址:http://sphinxsearch.com/files/sphinx-2.2.11-release.tar.gz 

cmake-3.6.2.tar.gz 

下載下傳位址:https://cmake.org/files/v3.6/cmake-3.6.2.tar.gz 

解壓 $ tar -zxvf NAME.tar.gz 

2 安裝程式

2.1 安裝依賴程式

gcc-c++  
libstdc++-devel 
ncurses-devel 
bison 
autoconf 
automake 
libtool-2.* 
expat-dev* 
expat-2* 
mysql-devel       

安裝指令: yum -y install 包名(支援*) :自動選擇y,全自動

2.2 安裝cmake

$ cd cmake-cmake-2.8.9 
$ ./bootstrap 
$ make && make install 
預設安裝在 /usr/local/bin 下面,要改變安裝路徑,在bootstrap指令中加入'--prefix=PATH'選項。       

2.3 安裝mysql

$ cp -R sphinx-VERSION/mysqlse mysql-VERSION/storage/sphinx  
$ cd mysql-VERSION  
$ sh BUILD/autorun.sh 
$ ./configure --with-plugins=sphinx 
$ make && make install 

$ cd /usr/local/mysql-VERSION
$ mkdir -p /var/log/mysql /usr/local/mysql/etc
$ cp support-files/my-default.cnf /usr/local/mysql/etc/my.cnf
    #然後修改my.cnf
    [mysqld]
    basedir         = /usr/local/mysql
    datadir         = /usr/local/mysql/data
    user 	      = root
  #初使化資料庫
$ scripts/mysql_install_db  --user=root --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/ --defaults-file=/usr/local/mysql/etc/my.cnf 
 #起動并登入 
$ ./bin/mysqld_safe --defaults-extra-file=/usr/local/mysql/etc/my.cnf --user=root & 
$ mysql -uroot 
$ ln -s /usr/local/mysql/bin/mysql /usr/bin (when mysql: command not found) 
$ cp /usr/local/mysql/etc/my.cnf /etc/my.cnf  
$ cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql 

$ service mysql start|stop|restart  
/*添加服務到自啟動項*/  
$ chkconfig --level 3 mysql on       

2.4 安裝sphinx engine

mysql>install plugin sphinx soname "ha_sphinx.so";  
mysql>show engines; #ENGINE清單顯示出SPHINX表示安裝成功       

2.5 安裝sphinx

安裝sphinx

$ ./configure --prefix=/usr/local/sphinx --with-mysql 
 $ make && make install       

3 mysql編碼設定

mysql編碼設定 

編輯MySql的配置檔案/etc/my.cnf 

–在 [mysqld] 标簽下加上三行 

character_set_server = utf8 

lower_case_table_names = 1 表名不區分大小寫(此與編碼無關) 

–在 [mysql] 标簽下加上一行 

default-character-set = utf8 

–在 [mysql.server]标簽下加上一行 

default-character-set = utf8 

–在 [mysqld_safe]标簽下加上一行 

default-character-set = utf8 

–在 [client]标簽下加上一行 

default-character-set = utf8 

繼續閱讀