日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

linux安装sphinx

發布時間:2023/11/27 生活经验 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux安装sphinx 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
從sphnix網站下載sphinx源碼包,當前最新版本是: http://sphinxsearch.com/files/sphinx-0.9.9.tar.gz。當然,還需要保證你的系統已經安裝了mysql。

????? 其次,就是依照官方的安裝指導進行安裝了,基本步驟如下:
  1. 解壓sphinx源碼包:

    $ tar xzvf sphinx-0.9.9.tar.gz
    $ cd sphinx

  2. 運行configure配置程序:

    $ ./configure [options]

    有一些參數可以在配置的時候指定,主要如下:

    • --prefix, 指定sphinx安裝到系統的那個位置; 例如 --prefix=/usr/local/sphinx
    • --with-mysql, mysql的安裝目錄,指定如果自動偵查mysql的相關庫文件失敗后到哪個目錄查找
    • --with-pgsql, 同上,只是用于pgsql的
    完整的配置命令如下:./configure --prefix=/usr/local/sphinx --with-mysql=/usr/local/mysql
  3. 編譯:
????????? $ make

????????? 在這個步驟,可能遇到一個問題,就是報 sphinx undefined reference to 'libiconv' 的錯誤,解決辦法是修改 /src/MakeFile(注意是src下的Makefile不是csft下的Makefile),編輯LIBS = -lm -lexpat 后面添加-liconv,即將該行該為:
????????? LIBS = -lm -lexpat -liconv -L/usr/local/lib

???? 4. 安裝
??
????????? $ make install

?????????
如果編譯中沒有產生錯誤,這個步驟應該不會遇到問題。如果完成后未正確安裝,就要回去找make過程中遇到的錯誤了。

???? 5. 運行測試
?????????
????????? $ cd /usr/local/sphinx/etc
????????? $ cp sphinx.conf.dist sphinx.conf
????????? $ vi sphinx.conf


????????? 這里,sphinx提供了一個簡單的例子,基本步驟是先將
/sphinx/etc下面的sphinx.conf.dist重命名為sphinx.conf,然后修改 sphinx.conf其中的配置,主要是修改你服務器上面的mysql的用戶名、密碼、使用的數據庫等。修改的位置是sphinx.conf的source src1下面幾行。

????????? $ mysql -u test < /usr/local/sphinx/etc/example.sql

?????????
這里是導入sphinx準備的測試數據,我們把數據導入到mysql的test數據庫中。當然,這里的數據庫要和你上面的配置文件(sphinx.conf)中指定的sql_db值相同。注意,運行
這個命令 的話,如果你的mysql命令沒有加入到環境變量中,就需要用完整路徑,同時可能需要輸入密碼。比如你的mysql安裝在 /usr/local/mysql 目錄中,root賬戶的密碼是 xxxxxx ,那么命令應該調整為:
????????? $ /usr/local/mysql/bin/mysql -uroot -pxxxxxx test < /usr/local/sphinx/etc/example.sql

????????? $ cd /usr/local/sphinx/etc
????????? $ /usr/local/sphinx/bin/indexer --all

?????????
這個命令是建立索引,當然數據基礎是剛剛導入的example.sql的數據,如果這里出錯,最大的可能是你的sphinx.conf中的數據庫配置錯了,你需要回去檢查并修正。但是,還有可能出現sphinx必須的庫文件無法找到,例如出現以下兩種錯誤:
????????? /usr/local/sphinx/bin/indexer: error while loading shared libraries: libmysqlclient.so.15: cannot open shared object file: No such file or directory
????????? /usr/local/sphinx/bin/indexer: error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory
????????? 這主要是因為你安裝了一些庫后,沒有能夠配置相應的環境變量。你可以通過建立連接的方式修正這個問題,運行如下命令:
????????? ln -s /usr/local/mysql/lib/libmysqlclient.so.15 /usr/lib/libmysqlclient.so.15
?????????
ln -s /usr/local/lib/libiconv.so.2 /usr/lib/libiconv.so.2
????????? 這里我假設你相應的軟件包安裝在/usr/local/xxx 目錄下,如果你不是安裝在相應目錄下,你就需要使用你自己的路徑。如果你沒有安裝libiconv軟件包,則需要安裝下,這個安裝比較簡單,就不多說了。
????????? 如果還出現類似錯誤,照上面的方法修正。

????????? $ cd /usr/local/sphinx/etc
????????? $ /usr/local/sphinx/bin/search test

?????????
上面的命令是搜索測試,測試的關鍵詞就是 test 了,如果成功的話,你應該看到搜到的結果,出現字串“index 'test1': query 'test ': returned 3 matches of 3 total in 0.000 sec”,后面跟的是結果表示成功了。

????????? $ cd /usr/local/sphinx/etc
????????? $ /usr/local/sphinx/bin/searchd


????????? 運行上面的命令,你就啟動了sphinx進程了,如果沒什么錯誤,可以通過ps -aux|grep '3312' 找到sphinx進程了。

總結

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

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