sphinx如何不通过indexer方式完成中文索引?
sphix不支持实时索引,有一种妥协的增量索引的方法(但只支持新增数据,而不支持修改),所以我想既然sphinx也支持sql方式操作的话,那么我操作一条数据时,同时也在sphinx中操作这条数据,sphinx和mysql独立开来就好了,但是我按照同样的配置设置一个rt索引后,插入一条带中文的数据,查询中文中某个字或者整个中文句子,都无法查到对应的数据,这是为啥呢?下面贴出配置文件
source src1
{
type = mysql
sql_host = localhost
sql_user = root
sql_pass = 123456
sql_db = test
sql_port = 3306 # optional, default is 3306
sql_sock = /tmp/mysql.sock
sql_query_pre = SET NAMES utf8
sql_query = select id,shop_name,short_name from cg_shop;
#sql_attr_uint = id
#sql_attr_uint = date_added
}
index test1
{
source = src1
path = /home/cm/sphinx3/data/test1
ngram_len = 1
ngram_chars = U+3000..U+2FA1F
}
index testrt
{
type = rt
rt_mem_limit = 128M
path = /home/cm/sphinx3/data/testrt
rt_field = title
rt_field = content
rt_attr_uint = gid
morphology = none
ngram_len = 1
ngram_chars = U+3000..U+2FA1F
}
indexer
{
mem_limit = 128M
}
searchd
{
listen = 9312
listen = 9306:mysql41
log = /home/cm/sphinx3/data/log/searchd.log
query_log = /home/cm/sphinx3/data/log/query.log
read_timeout = 5
max_children = 30
pid_file = /home/cm/sphinx3/data/log/searchd.pid
seamless_rotate = 1
preopen_indexes = 1
unlink_old = 1
workers = threads # for RT to work
binlog_path = /home/cm/sphinx3/data
}
以上,test1索引,我可以搜索中文,但testrt索引我在插入一条新数据后,还是无法搜索中文,请问这是哪里配置有问题么?
推荐文章: