Sphinx在windows上的安裝使用

2022-09-17 11:18:13 字數 2267 閱讀 9982

sphinx是乙個基於sql的全文檢索引擎,可以結合mysql,postgresql做全文搜尋,

它可以提供比資料庫本身更專業的搜尋功能,使得應用程式更容易實現專業化的全文檢索。

sphinx特別為一些指令碼語言設計搜尋api介面。

特性:高速索引;

高速搜尋 ;

高可用性 ;

提供良好的相關性排名 支援分布式搜尋;

提供文件摘要生成;

提供從mysql內部的外掛程式式儲存引擎上搜尋;

支援每個文件多個全文檢索域;

支援每個文件多屬性;

支援斷詞;

支援單位元組編碼與utf-8編碼;

sphinx在mysql上的應用有兩種方式

①、採用api呼叫,如使用php、j**a等的api函式或方法查詢。優點是可不必對mysql重新編譯,服務端程序「低耦合」,且程式可靈活、方便的呼叫;

缺點是如已有搜尋程式的條件下,需修改部分程式。推薦程式設計師使用。

②、使用外掛程式方式(sphinxse)把sphinx編譯成乙個mysql外掛程式並使用特定的sql語句進行檢索。其特點是,在sql端方便組合,且能直接返回資料給客戶端

不必二次查詢(注),在程式上僅需要修改對應的sql,但這對使用框架開發的程式很不方便,比如使用了orm。另外還需要對mysql進行重新編譯,且需要mysql-5.1以上版本

支援外掛程式儲存。系統管理員可使用這種方式

這裡使用的是sphinx-2.2.11-release-win64

修改sphinx.conf必要項

(1)mysql資料庫連線項;

(2)@confdir@替換成實際目錄,然後手動建立好該目錄及子目錄,這裡為 

e:\sphinx\data  # 索引資料目錄  

e:\sphinx\log # 程序檔案目錄

4. 安裝sphinx到windows服務

5. php客戶端測試 

進入e:\sphinx\api目錄,sphinx提供了php, python , ruby , c等客戶端**,如果php程式設計師想訪問sphinx,包含sphinxapi.php就可以了 ,test.php是sphinx提供的訪問例子。 

在測試之前,需要生成索引檔案到e:\shpinx\data目錄,進入e:\sphinx\bin執行 

執行成功後必須重新啟動sphinx才能生效。

在啟用服務的時候提示」發生系統錯誤1067″,查了下資料,這需要在安裝服務的時候指定配置檔案的路徑

因為系統中已存在searchd服務所以需要先刪除,再重新install

重啟後執行test.php 

php test.php test
出現了錯誤query failed: connection to localhost:9312 failed (errno=10060, msg=由於連線方在一段時間後沒有正確答覆或連線的主機沒有反應,連線嘗試失敗。

如果本地使用ipv4、ipv6雙棧網路(windows 7),預設localhost 指向ipv6

改為:127.0.0.1就好了

修改test.php的host

$host = "127.0.0.1";

再執行test.php

searchd的啟動與停止

net start/stop searchd

Sphinx在Windows下的安裝

sphinx在windows下的安裝 僅供小師弟們以後參考 sphinx的中文參考 sphinx是 乙個基於sql的全文檢索引擎,可以結合mysql,postgresql做全文搜尋,它可以提供比資料庫本身更專業的搜尋功能,使得應用程式更容易實現 專業化的全文檢索。sphinx特別為一些指令碼語言設計...

在FreeBSD 上配置 Sphinx 搜尋引擎

在freebsd 上配置 sphinx 搜尋引擎 和 linux 上相比,會有一些差異,而且步驟可能會更加的繁瑣。有些可能無法用 make 系統進行編譯,必須手動修改 configure 檔案,或者 或者只能手動編譯。1.安裝 mmse gmmseg 比較成熟,安裝的過程一般不會出什麼問題。但是還是...

MinGW lapack 在windows 上安裝

方案一 mingw makefiles 配置好以後直接在build資料夾下,執行cmd.exe shell,mingw32 make j5,之後執行mingw32 make install 安裝檔案到c program files x86 lapack,勾選build shared libs 方案二...