我的 ruby 应用程序工作正常,直到本周早些时候系统崩溃,现在我在页面上收到一条错误消息...
错误信息: 无法连接到位于 localhost:27017 的主节点(Mongo::ConnectionFailure)
异常类: PhusionPassenger::UnknownError
应用根目录: /home/deploy/www/gm-git
系统是这样设置的...
• Ruby on Rails 3.0.8 • Mongoid 2.0.2 • 用于后台处理的Redis & Resque
我尝试了以下启动顺序但没有成功...
/opt/redis/redis-server
/opt/mongodb/bin/mongod --force --logpath /opt/mongodb/bin
rake environment rescue:workers
touch /home/proyectos/gm/test_git/goldenmile
这个我已经更新过很多次了
/opt/redis/redis-server
/opt/mongodb/bin/mongod --fork --logpath /opt/mongodb/bin
/opt/mongodb/bin/mongod --repair
rake environment rescue:workers
touch /home/proyectos/gm/test_git/goldenmile
但我在终端中收到错误消息,例如
/opt/mongodb/bin/mongod --start
ERROR: unknown option start
/opt/mongodb/bin/mongod --status
ERROR: unknown option status
/opt/mongodb/bin/mongod start
Invalid command: start
/opt/mongodb/bin/mongod/ --logpath /opt/mongodb/bin
-bash: /opt/mongodb/bin/mongod/: Not a directory
/opt/mongodb/bin/mongod/ --logpath /opt/mongodb/bin/mongod/
-bash: 2b.: command not found
/opt/mongodb/bin/mongod/ --logpath /opt/mongodb/bin/mongod
-bash: /opt/mongodb/bin/mongod/: Not a directory
任何帮助/指示都是最有用的
最佳答案
localhost:27017 的 Mongo::ConnectionFailure 错误在 mongod 未运行时很典型。您应该使用 ps 命令检查这一点,必要时重新启动 mongod,然后运行 mongo shell。如果 mongo shell 报告“错误:无法连接到服务器 127.0.0.1 shell/mongo.js:84”,则返回并检查 mongod 服务器进程的状态。
以下几行是可疑的。
/opt/mongodb/bin/mongod --fork --logpath /opt/mongodb/bin
/opt/mongodb/bin/mongod --repair
看来您正在尝试同时运行 mongod 服务器和进行修复。如果 mongod 已经在运行,修复尝试将退出,我猜你真的打算在启动 db 服务之前运行它。如果您在 64 位平台上,默认情况下日记功能处于打开状态,您不应进行修复以恢复一致的状态,请参阅 http://www.mongodb.org/display/DOCS/Durability+and+Repair
此外,修复可能需要很长时间,在此期间,您不能启动另一个 mongod 来提供 db 服务。我怀疑这是您的根本问题 - 正在运行修复,导致尝试启动数据库服务失败。
无论如何,mongod 似乎没有运行。 --start、--status、start 等选项如前所述都是未知的,mongod 还会为每个错误打印完整的选项列表。在 shell 命令(在 mongo 之后)之后有一个尾部斜线告诉操作系统寻找一个目录。您是否尝试在没有选项的情况下在 shell 中执行 mongod?怎么了?您需要让 mongod 作为数据库服务器运行(不是修复)并且应该验证它是否已启动并且您可以在继续之前使用 mongo shell 进行连接。
让我们知道结果如何。
关于ruby-on-rails - Ruby (Rack) 应用程序无法启动错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10945288/