首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Rails应用程序中搜索结果页面上的Sphinx连接错误

Rails应用程序中搜索结果页面上的Sphinx连接错误
EN

Stack Overflow用户
提问于 2014-11-27 18:37:49
回答 3查看 1.5K关注 0票数 3

我有一个以Posgresql为数据库的RoR应用程序。我试图通过使用Sphinx作为搜索引擎来设置搜索功能,并考虑Sphinx。我已经安装了mysql和postgresql支持的sphinx,考虑到sphinx v3 gem和它的依赖关系。

命令

rake ts:索引

执行时没有错误。日志说,我有20个文档索引(我的所有记录的邮政模型)。然后,我尝试为搜索结果页面创建控制器和视图。这是控制器的搜索操作

代码语言:javascript
运行
复制
def search
    @query = Riddle::Query.escape(params[:q])
    @posts = Post.search(@query)
end

当我尝试在搜索视图中使用@post变量时

本地主机:3000/搜索?q=hello

我有跟踪错误。

ThinkingSphinx::ConnectionError in Main#search 通过MySQL协议连接到狮身人面像时出错。通过MySQL协议连接到狮身人面像时出错。无法连接到MySQL服务器上的'127.0.0.1‘(61) -从post_core选择*匹配(’hello‘)和sphinx_deleted =0限制0,20;显示元

EN

回答 3

Stack Overflow用户

发布于 2014-11-28 03:43:20

ts:index任务只存储狮身人面像数据,它不启动响应搜索请求的守护进程。您需要运行ts:start rake任务才能实现这一点。

另外:ts:rebuild同时完成了所有这一切:停止Sphinx (如果它正在运行),索引数据,启动Sphinx。

票数 5
EN

Stack Overflow用户

发布于 2014-11-27 18:52:22

Thinking使用mysql作为内部用途,您必须将mysql2 gem添加到堆栈中,例如:

代码语言:javascript
运行
复制
gem 'mysql2', '~> 0.3.13'
gem 'thinking-sphinx', '~> 3.1.1'
票数 1
EN

Stack Overflow用户

发布于 2015-10-09 04:44:00

我遇到了同样的错误,最后我发现我没有用这个命令在我的本地系统上安装"Sphinx“,

代码语言:javascript
运行
复制
sudo apt-get update
sudo apt-get install sphinxsearch

关于安装的更多细节,您可以在这里找到

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

确保您还应该在您的系统上安装"mysql-server“来创建连接。

另外,我看了看,布勒普的回答是我的第二步。你也应该包括那些宝石,这样才能和斯芬克斯一起跑。

然后移到@pat的答案,这是我要走的最后一步,当你安装了狮身人面像时,它会启动服务,但是你需要停止服务才能运行,

代码语言:javascript
运行
复制
rake ts:index
rake ts:rebuild

跟狮身人面像一起去。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27177098

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档