我正在关注使用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?
答案 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内存,可以同时处理多个请求。通过减少请求的批量大小可以避免此错误。