1

次のクエリを実行して、プレーンなインデックスをリアルタイムに変換しようとしています。

ATTACH INDEX comment TO RTINDEX comment_rt;

しかし、sphinxql で実行すると、次のエラーが表示されます。

WARNING: sql_query_post[0]: error=Lost connection to MySQL server during query, 
query=ATTACH INDEX comment TO RTINDEX comment_rt

私のスフィンクス構成:

source base
{
    type = mysql
    sql_host = localhost
    sql_user = root
    sql_pass = NastyBalls123
    sql_db   = telefind
    sql_port = 3306 # optional, default is 9306

}

source comment : base
{
    sql_query = \
    SELECT id, content, thread_id, user_id, rank, level, \
    UNIX_TIMESTAMP(date_time_added) AS date_time FROM comment

    sql_attr_uint = id
    sql_attr_uint = thread_id
    sql_attr_uint = user_id
    sql_attr_uint = rank
    sql_attr_uint = level
    sql_attr_timestamp = date_time
}

index comment 
{
    source = comment
    charset_type = sbcs
    path = /usr/local/sphinx/data/non_rt/comment
    phrase_boundary_step = 0

    index_sp = 0
    stopword_step = 1
    dict = crc
}

index comment_rt
{
    type            = rt
    rt_mem_limit        = 32M

    path            = /usr/local/sphinx/data/comment_rt
    charset_type        = utf-8

    rt_field        = title
    rt_field        = content
    rt_attr_uint        = group_id
    rt_attr_timestamp = date_added
}

このページのスフィンクスのドキュメントでは、事前に次の設定を行う必要があると述べています。

  • ターゲット RT インデックスは空である必要があります。
  • ソース ディスク インデックスには、index_sp=0、boundary_step=0、stopword_step=1、dict=crc 設定が必要です。
  • ソース ディスク インデックスには、空の index_zones 設定が必要です。
4

1 に答える 1

1

ディスク インデックスのフィールドと属性が、RT インデックスの定義と一致しません。

それらは同一である必要があります。

于 2012-10-18T22:17:10.207 に答える