mysql - SphinxQL + sphinxsearch 表不存在

标签 mysql sphinx

今天我尝试将 sphinxsearch 与 SphinxQL 一起使用,但出现了问题 =\ 首先我安装了 sphinxsearch 然后配置了它,之后我使用 indexer --all 创建了索引 forum_index 。一切顺利完成。 然后我将 SphinxQl 添加到我的项目中,输入正在监听 sphinx 的主机和端口,并尝试像 SphinxQL 的 ReadMe 中那样进行查询:

// create a SphinxQL Connection object to use with SphinxQL
$conn = new Connection();
$conn->setParams(array('host' => 'localhost', 'port' => 9306))
;

但是导致了数据库访问错误:

access denied www-data@localhost password NO

之后,我使用 SphinxQL 设置用户名和密码参数

 mysqli::real_connect()

之前的错误消失了 然后我尝试进行测试查询:

$query = SphinxQL::create($conn)->select('column_one', 'colume_two')
    ->from('forum_index');
$result = $query->execute();

但是我收到一个错误:

table forum_index doesn't exists

我感觉我的 SphinxQL 没有看到 sphinx 或 sphinx 配置,并尝试进行简单的查询。 你知道出了什么问题吗?

最佳答案

请转到命令行使用以下命令

mysql -P9306 --protocol=tcp --prompt='sphinxQL> '

收到 sphinxQL 提示后,输入以下命令

sphinxQL> show tables;

如果一切设置正确,您可以在列表中看到 forum_index 表。否则,请检查 sphinx.conf 文件中的 searchd 配置部分以获得正确的配置。我的配置如下所示

searchd {
  listen                  = 9315
  listen                  = 9306:mysql41
  log                     = /Users/XXXX/projects/sphinx/data/searchd.log
  query_log               = /Users/XXXX/projects/sphinx/data/query.log
  read_timeout            = 5
  max_children            = 30
  pid_file                = /Users/XXXX/projects/sphinx/data/searchd.pid
  max_matches             = 1000
  seamless_rotate         = 1
  preopen_indexes         = 0
  unlink_old              = 1
  workers                 = threads
  thread_stack            = 1024K
}

关于mysql - SphinxQL + sphinxsearch 表不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33744901/

相关文章:

php - MYSQL - 从获取的数组中选择特定值

php - 限制每个循环的查询结果

php - Mysql从两个大表中找到不匹配的记录

mysql - sphinxsearch 给出缺少属性的错误

ruby-on-rails - 在 ruby​​ 代码中更新思维 sphinx 索引

mysql - Sphinx 和 GUID

php - Sphinx:保持索引最新。实时指数与实时指数更新

mysql - MySQL 中的排行榜排名,查看器位于结果集中间

java - 通过摘要进行全文搜索

mysql - 一个好的电子商务搜索是如何工作的?