Yii框架中sphinx索引配置方法解析

这是初夏,陽光灿烂,海水湛蓝,海鸥轻巧地向船桅间滑过,生命是多彩的,充满了青春的欢乐。

本文实例讲述了Yii框架中sphinx索引配置方法。分享给大家供大家参考,具体如下:

请先将var/test/documents.sql导入数据库,并配置好以下的MySQL用户密码数据库

#源定义
source mysql
{
  type          = mysql
  sql_host        = localhost
  sql_user        = root
  sql_pass        = root
  sql_db          = yii2
  sql_port        = 3306
  sql_query_pre      = SET NAMES utf8
  sql_query        = SELECT id, zhan_name, url, title, xu_id, status, UNIX_TIMESTAMP(addtime) as addtime FROM zhan
  #sql_query第一列id需为整数
  #title、content作为字符串/文本字段,被全文索引
  #sql_attr_uint      = price      #从SQL读取到的值必须为整数
  sql_attr_timestamp    = addtime  #从SQL读取到的值必须为整数,作为时间属性
  sql_query_info_pre   = SET NAMES utf8                    #命令行查询时,设置正确的字符集
  sql_query_info      = SELECT * FROM zhan WHERE id=$id #命令行查询时,从数据库读取原始数据信息
}
#源定义2
source mysql_goods
{
  type          = mysql
  sql_host        = localhost
  sql_user        = root
  sql_pass        = root
  sql_db          = yii2
  sql_port        = 3306
  sql_query_pre      = SET NAMES utf8
  sql_query        = SELECT id, goods_name, price FROM goods
  #sql_query第一列id需为整数
  #title、content作为字符串/文本字段,被全文索引
  sql_attr_uint      = price      #从SQL读取到的值必须为整数
  #sql_attr_timestamp    = addtime #从SQL读取到的值必须为整数,作为时间属性
  sql_query_info_pre   = SET NAMES utf8                    #命令行查询时,设置正确的字符集
  sql_query_info      = SELECT * FROM goods WHERE id=$id #命令行查询时,从数据库读取原始数据信息
}
#index定义
index mysql
{
  source      = mysql       #对应的source名称
  path      = D:/yii/advanced/vendor/coreseek-4.1-win32/var/data/mysql #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/...
  docinfo      = extern
  mlock      = 0
  morphology    = none
  min_word_len    = 1
  html_strip        = 0
  #charset_dictpath = /usr/local/mmseg3/etc/ #BSD、Linux环境下设置,/符号结尾
  charset_dictpath = D:/yii/advanced/vendor/coreseek-4.1-win32/etc/               #Windows环境下设置,/符号结尾,最好给出绝对路径,例如:C:/usr/local/coreseek/etc/...
  charset_type    = zh_cn.utf-8
}
#index定义2
index mysql_goods
{
  source      = mysql_goods      #对应的source名称
  path      = D:/yii/advanced/vendor/coreseek-4.1-win32/var/data/goods #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/...
  docinfo      = extern
  mlock      = 0
  morphology    = none
  min_word_len    = 1
  html_strip        = 0
  #charset_dictpath = /usr/local/mmseg3/etc/ #BSD、Linux环境下设置,/符号结尾
  charset_dictpath = D:/yii/advanced/vendor/coreseek-4.1-win32/etc/               #Windows环境下设置,/符号结尾,最好给出绝对路径,例如:C:/usr/local/coreseek/etc/...
  charset_type    = zh_cn.utf-8
}
#全局index定义
indexer
{
  mem_limit      = 128M
}
#searchd服务定义
searchd
{
  listen         =  9312
  read_timeout    = 5
  max_children    = 30
  max_matches      = 1000
  seamless_rotate    = 0
  preopen_indexes    = 0
  unlink_old      = 1
  pid_file = D:/yii/advanced/vendor/coreseek-4.1-win32/var/log/searchd_mysql.pid #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/...
  log = D:/yii/advanced/vendor/coreseek-4.1-win32/var/log/searchd_mysql.log    #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/...
  query_log = D:/yii/advanced/vendor/coreseek-4.1-win32/var/log/query_mysql.log #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/...
  binlog_path =                #关闭binlog日志
}

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

本文Yii框架中sphinx索引配置方法解析到此结束。解铃还需系铃人,躲避责任会解决不了任何问题,它只导致一个失败的人生。小编再次感谢大家对我们的支持!

您可能有感兴趣的文章
Yii实现微信公众号场景二维码的方法实例

Yii使用DbTarget实现日志功能的示例代码

Yii使用EasyWechat实现小程序获取用户的openID的方法

Yii Framework框架开发微信公众平台示例

Yii 实现数据加密和解密的示例代码