sphinx自动更新

sphinx自动更新

新浪搬家到这里图片没有了,,大家可以点连接看http://blog.sina.com.cn/s/blog_173ffd6340102xh5g.html

在使用SPHINX生成索引时只会为当前数据库中的数据生成索引,生成索引之后如果在数据库中又添加了新的数据那么在SPHINX是无法搜索到新的数据的,需要把新的数据也生成索引并添加到SPHINX中去才行。

在使用SPHINX生成索引时只会为当前数据库中的数据生成索引,生成索引之后如果在数据库中又添加了新的数据那么在SPHINX是无法搜索到新的数据的,需要把新的数据也生成索引并添加到SPHINX中去才行。

如果每次插入新的数据之后都要手动再重建索引太麻烦了,所以我们一般要配置SPHINX每隔一段时间自动把数据库中最新插入的数据重新新的索引文件,并把这个新的索引文件合并到主索引文件上。

 

实际操作:

1. 每次生成索引文件之后,要把最后一条记录的ID保存下来,下次ID大于这个ID就是新的数据

a. 建一张表用来保存这个IDsphinx自动更新


b. 配置SPHINX让每次生成索引之后能够直接把最大的ID更新进来sphinx自动更新


2. 定期为新添加的数据生成索引

a. 修改sphinx定义一个新的数据源(新插入的还没有创建索引的数据)

sphinx自动更新

b. 再添加一个index索引(每个数据源对应一个index

sphinx自动更新

c. 写一个bat脚本,让这个定期用新的数据源生成索引文件,并把这个索引文件合并到主索引(第一次生成的索引文件)文件上。sphinx自动更新


d. 配置windows系统让系统定期执行这个bat.脚本即可

sphinx自动更新
接下来按照步骤配置,把写好的bat脚本添加进去就好了

猜你喜欢

转载自blog.csdn.net/cfun_goodmorning/article/details/77745306