0
MariaDBとSphinx検索エンジンがあります。 テーブルの1つに大きなデータがあります。そして現在のmax_doc_idは849826469です。しかし誰かがIDがmax_doc_id
以下の行を追加しました。 IDを変更することはできません。なぜなら、これは海外のインデックスで使用されているからです。Sphinx Searchで手動で行をインデックスに追加するには?
この行はインデックスに追加されませんが、それはすべきです。
どうすればいいですか?
source srcmos
{
type = mysql
sql_host = 127.0.0.1
sql_user = root
sql_pass =
sql_db = dev_db
sql_port = 3306 # optional, default is 3306
sql_query_pre = REPLACE INTO sphinx_counter SELECT 1, MAX(id) FROM mos
sql_attr_uint = campaign_id
sql_query_range = SELECT MIN(id),MAX(id) FROM mos WHERE id <= (SELECT max_doc_id FROM sphinx_counter WHERE id=1)
sql_range_step = 10000
sql_query = SELECT mos.id, campaign_id, body FROM mos WHERE mos.id>=$start AND mos.id<=$end
}
セットアップでは、スフィンクスインデックスに関する追加情報を提供する必要があります。 – hank
@ hank、更新された投稿 –
平凡なスフィンクスのインデックスに何かインクリメンタルに追加することはできません。ちょうどそれを再インデックスする。 – hank