Проблема со SphinxQL в Ubuntu с postgres - PullRequest
0 голосов
/ 26 февраля 2020

Я хочу настроить sphinxsearch на моем сервере с Ubuntu 18.04 и postgres 10. Я использую эту фразу:

https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-sphinx-on-ubuntu-16-04

Мой sphinx_conf:

source src1
{
  type          = pgsql

  sql_host      = localhost
  sql_user      = postgres
  sql_pass      = my_pass
  sql_db        = test
  sql_port      = 2000

  sql_query     = \
  SELECT id, group_id, (date_added::TIMESTAMP) AS date_added, title, content \
  FROM documents

  sql_attr_uint         = group_id
  sql_attr_timestamp    = date_added
}
index test1
{
  source            = src1
  path              = /var/lib/sphinxsearch/data/test1
  docinfo           = extern
}
searchd
{
  listen            = 9312:pgsql2000
  listen            = 2000:sphinx
  log               = /var/log/sphinxsearch/searchd.log
  query_log         = /var/log/sphinxsearch/query.log
  read_timeout      = 5
  max_children      = 30
  pid_file          = /var/run/sphinxsearch/searchd.pid
  seamless_rotate   = 1
  preopen_indexes   = 1
  unlink_old        = 1
  binlog_path       = /var/lib/sphinxsearch/data
}

Когда я пытаюсь запустить psql на порту 2000

psql --port 9312 -h0

, я получаю:

'Connection refused'.

Postgres_conf:

...
listen_addresses = '*'
port = 2000
...

Somebody иметь дело с этим? Сфинкс можно запустить с postgres?

1 Ответ

2 голосов
/ 27 февраля 2020
  listen            = 9312:pgsql2000

неправильно. Sphinx не предоставляет интерфейс Postgres. Измените pgsql2000 на mysql41 и используйте для подключения к нему клиент mysql, а не psql.

Поскольку ваша цель заключается в индексировании по Sphinx из Postgres, я могу порекомендовать этот интерактивный учебник https://play.manticoresearch.com/mysql/ Речь идет об индексации из MySQL от Manticore Search / Sphinx, но она должна дать вам практический опыт и понимание того, как это работает. После этого должно быть просто изменить тип с «mysql» на «pg sql» в источнике, и он должен быть таким же.

...