无法连接到副本集的主节点<moped :: cluster nodes =“[&lt; Moped :: Node”resolved_address =“127.0.0.1:27017”>]&gt; </moped :: cluster>

时间:2013-09-02 01:22:08

标签: ruby-on-rails mongodb mongoid homebrew

我正在关注使用Devise和Mongoid(http://railsapps.github.io/tutorial-rails-mongoid-devise.html)的RailsApp教程,当我在“设置数据库种子文件”中找到“Rake db:seed”时遇到以下错误部分。

Could not connect to a primary node for replica set <Moped::Cluster nodes=[<Moped::Node resolved_address="127.0.0.1:27017">]>

我已经尝试过此页面上nixoncd的说明,但尚未修复此问题。它告诉我'文件存在'和'已经加载'。 “https://groups.google.com/forum/#!topic/mongodb-user/Hhh8iNCciMk

如果我在终端输入'mongod',我就知道了。

ERROR: could not read from config file

欢迎任何帮助。我在使用自制软件安装Mongoid的Mac OSX Mountain Lion上 - 尽管使用下载软件包mongodb.org安装了MongoDB。

MongoDB shell版本:2.4.6

由于

编辑:我不确定这个问题是否相关。还有启动mongoDB的问题。还发布了这里的问题: mongoDB, could not read from config file -- config in different folder / Uninstall it?

3 个答案:

答案 0 :(得分:25)

首先查看你的数据库是否由mongo运行,如果是的话

使用此命令:

sudo rm /var/lib/mongodb/mongod.lock
mongod --repair
sudo service mongodb start

您的数据库将有效。

答案 1 :(得分:10)

安装MongoDB为我解决了这个问题:

sudo apt-get install mongodb-server

答案 2 :(得分:3)

上述答案适用于发生此错误的大多数情况。

但是,我想请注意,在尝试在一个请求中向MongoDB写入异常大批量的记录时,您也会收到Could not connect to a primary node for replica set错误。在一个请求中将超过200,000个1 KB文档写入远程MongoDB服务器时遇到此错误。远程服务器有8 GB内存,可以同时处理多个请求。通过减少请求的批量大小可以避免此错误。