1. 程式人生 > 實用技巧 >Windows下Coreseek4.1環境搭建及執行(提供壓縮包地址

Windows下Coreseek4.1環境搭建及執行(提供壓縮包地址

很遺憾,coreseek官網因未知原因打不開了。貌似也不是短時間的事情,難道是開發者放棄coreseek了?

閒話少說,筆者在搭建完sphinx後,因為中文分詞的原因總覺得美中不足,於是千方百計的找到了coreseek的win32安裝包。

安裝包地址


下載後解壓到相應目錄,我這裡安裝的是在F:/coreseek下。so下面凡是涉及到路徑的地方一定要注意修改哦!

下載解壓後,把F:/coreseek/etc/csft_mysql.conf 這個檔案複製一份到F:/coreseek/bin下面,並且命名為coreseek.conf,然後修改配置檔案裡面的相關資訊。相對於sphinx的配置檔案,coreseek.conf還是簡單易懂的。

#MySQL資料來源配置,詳情請檢視:http://www.coreseek.cn/products-install/mysql/
#請先將var/test/documents.sql匯入資料庫,並配置好以下的MySQL使用者密碼資料庫

#源定義
source mysql
{
type = mysql
sql_host = localhost
sql_user = root
sql_pass = root
sql_db = sphinxtest
sql_port = 3306
sql_query_pre = SET NAMES utf8

sql_query = SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content FROM documents
#sql_query第一列id需為整數
#title、content作為字串/文字欄位,被全文索引
#從SQL讀取到的值必須為整數
sql_attr_uint = group_id

#從SQL讀取到的值必須為整數,作為時間屬性
sql_attr_timestamp = date_added

#命令列查詢時,設定正確的字符集
sql_query_info_pre = SET NAMES utf8

#命令列查詢時,從資料庫讀取原始資料資訊
sql_query_info = SELECT * FROM documents WHERE id=$id
}

#index定義
index mysql
{
#對應的source名稱
source = mysql

#請修改為實際使用的絕對路徑,例如:/usr/local/coreseek/var/...
path = F:/coreseek/var/data/mysql

docinfo = extern
mlock = 0
morphology = none
min_word_len = 1
html_strip = 0

#中文分詞配置,詳情請檢視:http://www.coreseek.cn/products-install/coreseek_mmseg/
#charset_dictpath = /usr/local/mmseg3/etc/ #BSD、Linux環境下設定,/符號結尾

#Windows環境下設定,/符號結尾,最好給出絕對路徑,例如:C:/usr/local/coreseek/etc/...
charset_dictpath = F:/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 = F:/coreseek/var/log/searchd_mysql.pid #請修改為實際使用的絕對路徑,例如:/usr/local/coreseek/var/...
log = F:/coreseek/var/log/searchd_mysql.log #請修改為實際使用的絕對路徑,例如:/usr/local/coreseek/var/...
query_log = F:/coreseek/var/log/query_mysql.log #請修改為實際使用的絕對路徑,例如:/usr/local/coreseek/var/...
binlog_path = #關閉binlog日誌
}

準備資料庫:

DROP TABLE IF EXISTS documents;
CREATE TABLE documents
(
    id            INTEGER PRIMARY KEY NOT NULL AUTO_INCREMENT,
    group_id    INTEGER NOT NULL,
    group_id2    INTEGER NOT NULL,
    date_added    DATETIME NOT NULL,
    title        VARCHAR(255) NOT NULL,
    content        TEXT NOT NULL
);
 
REPLACE INTO documents ( id, group_id, group_id2, date_added, title, content ) VALUES
    ( 1, 1, 5, NOW(), 'test one', 'this is my test document number one. also checking search within phrases.' ),
    ( 2, 1, 6, NOW(), 'test two', 'this is my test document number two' ),
    ( 3, 2, 7, NOW(), 'another doc', 'this is another group' ),
    ( 4, 2, 8, NOW(), 'doc number four', 'this is to test groups' );
 
DROP TABLE IF EXISTS tags;
CREATE TABLE tags
(
    docid INTEGER NOT NULL,
    tagid INTEGER NOT NULL,
    UNIQUE(docid,tagid)
);
 
INSERT INTO tags VALUES
    (1,1), (1,3), (1,5), (1,7),
    (2,6), (2,4), (2,2),
    (3,15),
    (4,7), (4,40);

配置完成安裝下面操作即可:

1.點選開始按鈕輸入cmd ,右鍵cmd.exe 以管理員身份執行

2.安裝coreseek

F:/coreseek/bin/searchd --install --config F:/coreseek/bin/coreseek.conf --servicename Coreseek

並啟動 Coreseek 服務

sc start Coreseek

3.如要已啟動服務,要更新索引

F:/coreseek/bin/indexer -c F:/coreseek/bin/coreseek.conf --all --rotate

4.開啟coreseek命令

F:/coreseek/bin/searchd -c F:/coreseek/bin/coreseek.conf

操作完成後開啟搜尋頁面測試就可以了

解除安裝 coreseek

停止服務

sc stop Coreseek

解除安裝服務 sc delete Coreseek