问题标签 [sphinxsearch]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
19 浏览

sphinx - sphinix rt 表架构未更新

使用 sphinxsearch 2.2,我在以下位置定义了这个架构sphinx.conf

当我保存并重新安装 searchd (searchd --stop然后searchd再次唱歌)时,该架构未反映在 spixQL 中:

如您所见,由于某种原因,title上面有两个字段。这不会改变我对sphinx.conf.

为了更新架构,我还尝试删除所有 /var/lib/sphinxsearch/data/topic* 文件,但没有任何区别。

这里有什么问题?我该如何解决?

0 投票
0 回答
25 浏览

django - 狮身人面像列错误:“请求的参数未知”

我在我的 django 网站上有一个可过滤的表,我已经添加了一个列。但是,在插入获取数据的代码后,我现在在刷新页面时收到此错误:

我的网站有两个数据库。最初是一个 sphinx 数据库,然后它通过第二个设置文件中的 databases.update() 使用 postgres 数据库进行更新。

我将该列添加到 postgres 和 sphinx 中。我通过查看sphinx mysql数据库已经确认它在sphinx中(自然我也检查了postgres,并且该列可以在其他区域拉起)。我通过停止 sphinx 添加它,在 .conf 文件中将该列添加为“rt_attr_string”,清除“var/lib/sphinxsearch/data”中的数据,然后重新启动 sphinx。

连接到表的代码是:

应用程序/conf.py

(请记住,为简单起见,我删除了额外的列/重命名了它)

在views.py内部:

在 sphinx.py 里面

主要的 html 模板是从表中拉出来的,所以我只是把它放在这里......

我不确定我是否错过了另一个要编辑的地方……(这个项目是传给我的,但最初不是我的)。表格中有 JS,但它似乎只是在提取格式,而不是与查询交互......我真的很茫然,所以任何帮助都会很棒。

谢谢!

0 投票
1 回答
35 浏览

sphinxsearch - 狮身人面像搜索:如何理解 min_prefix_len

抱歉,我在这里发布我的问题,因为我在它所属的 sphinxsearch 论坛上永久收到错误。

我设置了 min_prefix_len = 3。

根据http://sphinxsearch.com/docs/current/conf-min-prefix-len.html我希望匹配

但我什至没有得到匹配

但是我得到了所有的比赛

我不明白的是什么?

0 投票
0 回答
19 浏览

django - 使用 Sphinxsearch 运行的 Django 引导表上的“未知参数”错误

我在我的 django (2.1) 站点中有一个表,它是一个可过滤的搜索,贯穿我的 sphinxsearch mysql 数据库。

该构建使用主要的 postgres 数据库,然后将其添加到 sphinxsearch mysql 表中。

我最近在 postgres 和 sphinx 数据库中添加了一个列,并通过查看 mysql 确认两者都已填充...但是当我尝试将它们拉到表中时,我收到以下错误:

“DataTables 警告:表 id=table - 为第 0 行第 0 列请求未知参数‘member_name’。有关此错误的更多信息,请参阅http://datatables.net/tn/4”

我的表通过 conf.py 文件工作,然后通过 ajax 视图运行。

conf.py 部分:

view_ajax.py

我不确定我是否缺少应该编辑的文件,或者只是我做错了......我知道数据存在并且都不为空(至少在 sphinx 中,有空值在我将其转换为 sphinxsearch 的默认值的 postgres)。

“member_name”是除 django_forms.py 之外的所有内容中的列值(由于某些语法冲突),但我认为这不重要......

谢谢!

0 投票
1 回答
24 浏览

mysql - 与 MySql LIKE 相比,Sphinx Search 返回的结果更少

当我尝试简单的 MySql 查询时

它从我的数据库中返回 278 条记录,当我像这样通过 Sphinx 搜索进行搜索时

它只返回 112 条记录。有没有办法在 Sphinx 中获得与 MySql Query 相同的记录?

0 投票
0 回答
19 浏览

django - 在 Django SphinxSearch 中创建新的 RT 表

我有一个使用 sphinxsearch 运行的 django 站点,但无法创建新的 RT 表。

我之前使用以下步骤将列添加到 RT 表: sudo service sphinxsearch stop 删除 var/lib/sphinxsearch 中的数据 将字段添加到 sphinx.conf sudo service sphinxsearch start 之后新列出现在 mysql 中,我可以确认它通过直接连接到数据库。

但是,我现在已经创建了一个全新的表,但是当我运行相同的步骤时,并没有创建新表的数据文件以及表本身。我试图手动进入 Mysql 来创建表,但没有运气。大多数 sphinx 文档都不是基于 RT 表的,我无法找到如何创建它...

当我尝试运行以下日志调试时,我收到一条错误消息,指出“table_name.lock”文件不存在。格式不会错,因为当我收到错误时,只需运行 sudo sphinxsearch start ......所以我不确定从这里去哪里。

谢谢!

附加细节:这个新表也是新 django 应用程序的一部分,因此服务器本身的 webapp 部分中的 sphinx.py 文件也是新的,但我认为这不会影响它,因为我总是能够创建后端之前?

0 投票
1 回答
27 浏览

mariadb - MariaDB SphinxSE 不接受权重参数

如果我尝试这个查询:

有用。但是,如果我尝试赋予它权重,它会返回一个错误:

失败并出现错误:

(MariaDB 报告的错误在那里被截断,但我相信它说“预期为 0”)

和:

失败并出现错误:

(同样,SphinxSearch 返回的错误被 MariaDB 截断)

我找到的有关 SphinxSE 的所有文档都告诉我以这种方式查询索引,但它不起作用,但互联网上似乎没有人遇到过这个错误,因为没有人在任何地方询问这个问题......

难道我做错了什么?

0 投票
1 回答
46 浏览

regex - 将 SphinxSearch 查询语法转换为 Ruby 中的布尔搜索字符串

我一直在思考将以下 Sphinx 搜索查询转换为典型网络搜索或门户网站中常用的最简单方法,例如布尔搜索字符串,反之亦然

需要转换为

出于示例目的,也有细微的变化

应该

为清楚起见,“A”可以是任何单词和任何大小写,它不区分大小写。除非在引号内,否则空格在起始语法中表示 AND。所以 AB 只是一个词,例如 Java。(A|B) 之间的空格不重要 (A|B) 与 (A | B) 或 (A | B) 等相同。每个字母表示一个单词。

其中一些查询将很长 - 最多 500 个术语。虽然这不是一个巨大的处理开销,但我在想什么是最好的(最有效的)转换方式。标记化、正则表达式/模式匹配、简单替换、递归等。你们会推荐什么?

0 投票
0 回答
6 浏览

sphinx - Sphinx Searchd 持续使用 400% 的 CPU,而对守护进程没有任何请求

我在 Ubuntu 20.04 上使用 Sphinx 2.2.11-id64-release (95ae9a6)。

我有 30 个不是很大的索引(总共 1000 万条记录)。目前几乎没有任何查询,每小时 100 个左右。但是searchd守护程序一直在使用 400% 的 CPU,即使没有对守护程序进行任何查询。

我阅读了 2010-2016 年的一些旧帖子,这些帖子都在谈论日志记录问题。但是在这些帖子之后已经有一段时间了。

有同样问题的人吗?任何解决方案的想法?需要什么才能调试这个?

PS。从这里的问题数量来看,Sphinx Search 可能有点过时了。

0 投票
1 回答
19 浏览

php - 无法使用 PHP 和 PDO 连接到 Sphinx

我好像遇到了一些我不明白的问题...

我已经安装了 MySQL 8.0.27 我已经安装了 Sphinx,创建了一个索引,填充了它,通过终端一切正常。我能够毫无问题地查询 Spinx 索引。所以 searchd 和索引器正在做他们的工作。

我创建了一个简单的 PHP 界面来使用 PHP 搜索这个索引。但这就是事情变得越来越奇怪的地方......

我无法连接到 sphinx 实例(它确实通过终端工作..)--> SQLSTATE[HY000] [2002] 权限被拒绝

我的 sphinx.conf

这是狮身人面像状态

这是我用来从我的 PHP 脚本连接到 Sphinx 的代码......这导致了这篇文章顶部提到的错误......

通过终端连接没有问题,查询工作正常且快速......

它在 $pdo = new PDO() 部分失败。无法建立连接。我尝试将 localhost 替换为 127.0.0.1,尝试将端口替换为 9312(请参阅配置)以及它们之间的所有组合。没有骰子。

有人有线索或提示吗?它快把我逼疯了……