Sphinx 實現海量資料的快速查詢

2021-08-16 21:32:34 字數 1978 閱讀 7228

/*執行測試*/

$ cd /usr/local/sphinx/etc

$ cp sphinx.conf

.dist sphinx.conf

$ vi sphinx.conf

cd /usr/local/sphinx/etc #進入sphinx的配置檔案目錄

cp sphinx.conf

.dist sphinx.conf

#新建sphinx配置檔案

mysql server:192.168

.1.10

mysql db :test

mysql 表:test.sphinx_article

mysql> desc sphinx_article;

+———–+———————+——+—–+———+—————-+

| field | type | null | key | default | extra |

+———–+———————+——+—–+———+—————-+

| id | int(11) unsigned | no | pri | null | auto_increment |

| title | varchar(255) | no | | | |

| cat_id | tinyint(3) unsigned | no | mul | | |

| member_id | int(11) unsigned | no | mul | | |

| content | longtext | no | | | |

| created | int(11) | no | mul | | |

+———–+———————+——+—–+———+—————-+

6 rows in set (0.00 sec)

source article_src

### 索引 ###

index article

############ sphinx 服務程序 ########

searchd

bin/indexer -c etc/sphinx.conf article ### 建立索引檔案的命令

## bin/search -c etc/sphinx.conf 北京

### 使sphinx在後台執行

bin/searchd -c etc/sphinx.conf &

####

php測試**:

<?php

require 「sphinxapi.php」;

$cl = new sphinxclient();

$cl->setserver(』192.168

.1.150′, 9312); //注意這裡的主機

#$cl->setmatchmode(sph_match_extended); //使用多欄位模式

//dump($cl);

$index=」article」;

$res = $cl->query($keyword, $index);

$err = $cl->getlasterror();

dump($res);

function

dump

($var)

?>

shell 實現快速更新sphinx索引庫檔案

隨著基礎詞典和資料庫內容的容量的增長,sphinx索引檔案的生成時間也隨之增長著。要實現在最短的時間內對sphinx索引檔案的更新工作,看來只有在後台另外生成乙份新的索引檔案,完成之後再停止sphinx服務進行替換了。替換,就是將原來的索引檔案重新命名為別的檔案,再將新生成的索引檔案重新命名為索引檔...

利用rsync實現快速刪除海量檔案

1 先安裝rsync yum install rsync 2 建立乙個空的資料夾 mkdir tmp test 3 用rsync刪除目標目錄 rsync delete before a h v progress stats tmp test log 這樣我們要刪除的log目錄就會被清空了,刪除的速度...

海量資料插入資料庫的快速方案

在我們開發專案過程中,一般都會遇到大批量的資料匯入。比如根據訂購日誌來生成訂購記錄。經過查詢資料發現了2種比較快速的方法 方法一 需要對日誌檔案做解析出來的。public class jdbcmorequick pstmt.executebatch conn.commit pstmt.close c...