【实战】sphinx索引合并的脚本

mkdir /usr/local/sphinx/scripts


----0.全部主索引新建

#!/bin/bash
#ocpyang@126.com
#main_index_update.sh
/usr/local/sphinx/bin/indexer src2  -c /usr/local/sphinx/etc/sphinx.conf  --rotate > /dev/null 2>&1
/usr/local/sphinx/bin/indexer src3  -c /usr/local/sphinx/etc/sphinx.conf  --rotate > /dev/null 2>&1
/usr/local/sphinx/bin/indexer src4  -c /usr/local/sphinx/etc/sphinx.conf  --rotate > /dev/null 2>&1
/usr/local/sphinx/bin/indexer src5  -c /usr/local/sphinx/etc/sphinx.conf  --rotate > /dev/null 2>&1



----1.增量索引
#!/bin/bash
#ocpyang@126.com
#delta_index_update.sh
/usr/local/sphinx/bin/indexer src2_delta  -c /usr/local/sphinx/etc/sphinx.conf  --rotate > /dev/null 2>&1
/usr/local/sphinx/bin/indexer src3_delta  -c /usr/local/sphinx/etc/sphinx.conf  --rotate > /dev/null 2>&1
/usr/local/sphinx/bin/indexer src4_delta  -c /usr/local/sphinx/etc/sphinx.conf  --rotate > /dev/null 2>&1
/usr/local/sphinx/bin/indexer src5_delta  -c /usr/local/sphinx/etc/sphinx.conf  --rotate > /dev/null 2>&1


---2.合并索引

#!/bin/bash
#ocpyang@126.com
#merge_daily_index.sh
# merge "main + delta" indexes

##1. index abount tblpnr
/usr/local/sphinx/bin/indexer --merge src2 src2_delta -c /usr/local/sphinx/etc/sphinx.conf --rotate >> /usr/local/sphinx/var/log/index_merge.log 2>&1

if [ "$?" -eq 0 ]; then
			/usr/local/mysql/bin/mysql -h127.0.0.1 -uroot -ppassword  -e "REPLACE INTO jinri.sph_counter SELECT 2, MAX(id),max(update_time) FROM jinripnr.tblpnr"
fi


##2. index abount tblticketno
/usr/local/sphinx/bin/indexer --merge src3 src3_delta -c /usr/local/sphinx/etc/sphinx.conf --rotate >> /usr/local/sphinx/var/log/index_merge.log 2>&1

if [ "$?" -eq 0 ]; then
        /usr/local/mysql/bin/mysql -h127.0.0.1 -uroot -ppassword -e "REPLACE INTO jinri.sph_counter SELECT 3, MAX(id),max(update_time) FROM jinritickno.tblticketno"
fi


##3. index abount tblpassengername
/usr/local/sphinx/bin/indexer --merge src4 src4_delta -c /usr/local/sphinx/etc/sphinx.conf --rotate >> /usr/local/sphinx/var/log/index_merge.log 2>&1

if [ "$?" -eq 0 ]; then
        /usr/local/mysql/bin/mysql -h127.0.0.1 -uroot -ppassword -e "REPLACE INTO jinri.sph_counter SELECT 4, MAX(id),max(update_time) FROM jinripname.tblpassengername"
fi



##4. index abount tblorderno
/usr/local/sphinx/bin/indexer --merge src5 src5_delta -c /usr/local/sphinx/etc/sphinx.conf --rotate  >> /usr/local/sphinx/var/log/index_merge.log 2>&1

if [ "$?" -eq 0 ]; then
        /usr/local/mysql/bin/mysql -h127.0.0.1 -uroot -ppassword -e "REPLACE INTO jinri.sph_counter SELECT 5, MAX(id),max(update_time) FROM jinriorderno.tblorderno"
fi

####再次新建增量索引
#delta_index_update.sh
/usr/local/sphinx/bin/indexer src2_delta  -c /usr/local/sphinx/etc/sphinx.conf  --rotate > /dev/null 2>&1
/usr/local/sphinx/bin/indexer src3_delta  -c /usr/local/sphinx/etc/sphinx.conf  --rotate > /dev/null 2>&1
/usr/local/sphinx/bin/indexer src4_delta  -c /usr/local/sphinx/etc/sphinx.conf  --rotate > /dev/null 2>&1
/usr/local/sphinx/bin/indexer src5_delta  -c /usr/local/sphinx/etc/sphinx.conf  --rotate > /dev/null 2>&1



 


# crontab -l

# crontab -e

*/5 * * * *  /usr/local/mysql/scripts/delta_index_update.sh
0 2 * * *    /usr/local/mysql/scripts/merge_daily_index.sh


---合并语法
/usr/local/sphinx/bin/indexer --merge src3 src3_delta -c /usr/local/sphinx/etc/sphinx.conf \
--rotate --merge-dst-range deleted 0 0  --merge-killlists


--查看job执行日志
tail -f /var/log/cron

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值