coreseek mysql_coreseek 与 php mysql 的联合使用
1、coreseek centos 5.4 下 的安裝
##下載coreeseek 3.2.14
wget http://www.coreseek.cn/uploads/csft/3.2/coreseek-3.2.14.tar.gz
tar xzvf coreseek-3.2.14.tar.gz
cd coreseek-3.2.14
##安裝mmseg ?輸出的warning信息可以忽略,如果出現(xiàn)error則需要解決
cd mmseg-3.2.14
./bootstrap
./configure --prefix=/usr/local/mmseg3
make && make install
cd ..
##安裝coreseek 輸出的warning信息可以忽略,如果出現(xiàn)error則需要解決
cd csft-3.2.14
sh buildconf.sh
./configure --prefix=/usr/local/coreseek --without-unixodbc --with-mmseg --with-mmseg-includes=/usr/local/mmseg3/include/mmseg/ --with-mmseg-libs=/usr/local/mmseg3/lib/ --with-mysql
##如果提示mysql問(wèn)題,可以查看MySQL數(shù)據(jù)源安裝說(shuō)明
make && make install
cd ..
至此,安裝完畢
安裝過(guò)程中可能會(huì)出錯(cuò):
libmysqlclient.so.16 等錯(cuò)誤
執(zhí)行下面命令即可:(注意修改mysql 的安裝位置)
ln?-s /usr/local/webserver/mysql/lib/mysql/libmysqlclient.so.16.0.0?/usr/lib/libmysqlclient.so.16
2、創(chuàng)建配置文件
配置文件在 /usr/local/coreseek/etc/ ?目錄下
復(fù)制一份?sphinx-min.conf.dist ?修改為 my.conf
修改里面的內(nèi)容,根據(jù)數(shù)據(jù)庫(kù)的表結(jié)構(gòu)
假設(shè)我有一個(gè)電影的數(shù)據(jù)庫(kù)
里面有一張表 存儲(chǔ)電影信息的
sql 為:
CREATE TABLE `movie` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(200) DEFAULT NULL,
`ename` varchar(200) DEFAULT NULL,
`alias` varchar(600) DEFAULT NULL,
`screenwriter` varchar(50) DEFAULT NULL,
`introduction` longtext,
`pubdate` datetime DEFAULT NULL,
`pubdatestring` varchar(50) DEFAULT NULL,
`actors` longtext,
`directors` varchar(200) DEFAULT NULL,
`covercode` varchar(50) DEFAULT NULL,
PRIMARY KEY (`oid`),
UNIQUE KEY `oid` (`oid`),
UNIQUE KEY `id` (`id`) USING BTREE,
KEY `pubdate` (`pubdate`) USING BTREE
) ENGINE=MyISAM DEFAULT CHARSET=utf8; name 電影名稱
ename 英文名
alias 別名
introduction 介紹
假設(shè)根據(jù)這些字段進(jìn)行搜索,那么配置文件內(nèi)容是這樣的:
配置文件,分為幾個(gè)部分 :源,索引,索引器,守護(hù)進(jìn)程
#源
source src_movie
{
type= mysql
sql_host= localhost
sql_user= root
sql_pass= root
sql_db= nm.movie
sql_port= 3306# optional, default is 3306
sql_query= \
SELECT id,UNIX_TIMESTAMP(pubdate) AS pubdated , name, ename, alias, screenwriter, actors, directors, introduction FROM movie
sql_attr_timestamp= pubdated
sql_query_info_pre = SET NAMES utf8
}
#索引
index movie
{
source= src_movie
path= /usr/local/coreseek/var/data/movie
docinfo= extern
charset_dictpath = /usr/local/mmseg3/etc/
charset_type = zh_cn.utf-8
mlock = 0
morphology = none
min_word_len = 1
html_strip = 0
}
#索引器
indexer
{
mem_limit= 128M
}
#守護(hù)進(jìn)程
searchd
{
port= 9312
log= /usr/local/coreseek/var/log/searchd.log
query_log= /usr/local/coreseek/var/log/query.log
read_timeout= 5
max_children= 30
pid_file= /usr/local/coreseek/var/log/searchd.pid
max_matches= 1000
seamless_rotate= 1
preopen_indexes= 0
unlink_old= 1
}
3、創(chuàng)建索引
#生成所有索引
/usr/local/coreseek/bin/indexer -c /usr/local/coreseek/etc/my.conf --all --rotate
#索引測(cè)試
/usr/local/coreseek/bin/search -c /usr/local/coreseek/etc/my.conf 拯救大兵瑞恩
#開(kāi)啟守護(hù)進(jìn)程,用來(lái)讓 php 等程序調(diào)用
/usr/local/coreseek/bin/searchd -c /usr/local/coreseek/etc/my.conf
#停止守護(hù)進(jìn)程
/usr/local/coreseek/bin/searchd -c /usr/local/coreseek/etc/my.conf --stop
4、編寫(xiě)php代碼
總結(jié)
以上是生活随笔為你收集整理的coreseek mysql_coreseek 与 php mysql 的联合使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 玩转oracle 11g(18):数据库
- 下一篇: mysql读书笔记----时间函数