日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Sphinx-安装和配置

發布時間:2025/3/21 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Sphinx-安装和配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本例是在Linux下, 環境 CentOS6.5 + PHP5.6.8 + MySQL5.6.13 + Sphinx2.3.1-beta

到官網下載對應環境的安裝包, 按照官方文檔指定步驟進行安裝

  第一種方式是采用API調用, 我們可以使用PHP, Python, Perl, Ruby等編程語言的API函數進行查詢, 這種方式不必重新編譯MySQL, 模塊間改動比較少, 相對靈活

  第二種需要重新編譯MySQL, 將Sphinx以插件的方式編譯到MySQL中去, 這種方式對程序改動比較少, 僅僅需要改動SQL語句即可, 但前提是你的MySQL版本必須在5.1以上

  Linux下源碼安裝:

    yum -y install make gcc g++ gcc-c++ libtool autoconf automake imake mysql-devel libxml2-devel expat-devel

    ./configure --prefix /usr/local/sphinx --with-mysql=/usr/local/mysql? --enable-id64

    make && make install

  安裝完畢, 目錄如下:

    bin: 可執行文件目錄

      indexer 用來生成索引數據,?創建索引, 收集要被檢索的數據

      searchd 后臺進程, 使用 indexer 生成的數據做查詢

    etc: 配置文件目錄

    var: 索引等數據存放目錄

配置, Sphinx默認使用 etc/sphinx.conf, 如果沒有, 則拷貝sphinx.conf.dist一份到sphinx.conf:

#設置主數據源配置, 與增量數據源分開, 避免重復建立索引, 只為增量數據源建立索引即可 source src1 {type = mysql #數據庫類型sql_host = localhostsql_user = rootsql_pass =sql_db = testsql_port = 3306 # optional, default is 3306sql_sock = /tmp/mysqld.sock #如果是Linux下需要開啟, 指定sock文件sql_query_pre = SET NAMES utf8 #預執行語句sql_query_pre = SET SESSION query_cache_type=OFF #關閉緩存sql_query = \SELECT id, title, content FROM post #獲取數據的SQL語句sql_query_info = SELECT * FROM post WHERE id=$id #必須要有 此處id與sql_query中的id鍵名相同#sql_attr_uint = group_id #對排序字段進行注釋 原自帶表中的字段#sql_attr_timestamp = date_added #對排序字段進行注釋 原自帶表中的字段sql_ranged_throttle = 0 } #src1主數據源的增量數據源, 繼承主數據源 #source src1throttled : src1 #{ # sql_ranged_throttle = 100 #} #建立主數據索引test1 index test1 {source = src1 #索引的數據源path = /usr/local/sphinx/var/data/test1 #索引文件所放目錄docinfo = externdict = keywordsmlock = 0morphology = nonemin_word_len = 1html_strip = 0charset_type = utf-8charset_table = utf-8 } #主數據索引test1的增量數據索引 #index test1stemmed : test1 #{ # path = /usr/local/sphinx/var/data/test1stemmed # morphology = stem_en #} #建立主數據索引dist1 #index dist1 #{ ## type = distributed # local = test1 # local = test1stemmed # agent = localhost:9313:remote1 # agent = localhost:9314:remote2,remote3 # agent_connect_timeout = 1000 # agent_query_timeout = 3000 #} ##建立主數據索引rt #index rt #{ # type = rt # path = /usr/local/sphinx/var/data/rt # rt_field = title # rt_field = content # rt_attr_uint = gid #} #索引器的配置, 主要用來設置索引器所占內存 indexer {mem_limit = 128M } #服務進程的配置 searchd {listen = 9312listen = 9306:mysql41log = /usr/local/sphinx/var/log/searchd.logquery_log = /usr/local/sphinx/var/log/query.logread_timeout = 5client_timeout = 300max_children = 30persistent_connections_limit = 30pid_file = /usr/local/sphinx/var/log/searchd.pidseamless_rotate = 1preopen_indexes = 1unlink_old = 1mva_updates_pool = 1Mmax_packet_size = 8Mmax_filters = 256max_filter_values = 4096max_batch_queries = 32workers = threads # for RT to work} common { }

a

轉載于:https://www.cnblogs.com/JohnABC/p/4730515.html

總結

以上是生活随笔為你收集整理的Sphinx-安装和配置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。