我目前正在尝试学习mongodb,但我无法找到解决此问题的方案。 当我运行mongoimport命令时,我收到以下错误:
~ mongoimport --host localhost --port 27017 --db test --collection people --file ~/Downloads/mongodb-consultas.json --jsonArray
2015-09-27T20:46:03.228-0600 [........................] test.people 0.0 B/684.2 KB (0.0%)
2015-09-27T20:46:03.745-0600 Failed: error connecting to db server: no reachable servers
2015-09-27T20:46:03.745-0600 imported 0 documents
我在命令行中运行mongod
有一个mongodb服务器。
我的MongoDB shell版本是3.0.6。
谢谢!
答案 0 :(得分:2)
您需要使用--host 127.0.0.1:27017
答案 1 :(得分:1)
尝试将--host localhost
更改为--host 127.0.0.1
答案 2 :(得分:1)
-h 127.0.0.1
参数是一种快速解决方法,但升级到MongoDB 3.0.7可以解决此问题。
答案 3 :(得分:0)
对我来说,mongo群集已启用ssl
,因此我遇到连接mongo服务器的问题。我只是添加--ssl
它工作正常。这可能对某人有帮助。
答案 4 :(得分:0)
旧但是因为这还没有答案:
我遇到了同样的问题并查看了所有问题,但没有一个问题包含我特定问题的解决方案。我在“admin”数据库中创建了我的用户,我必须在使用--authenticationDatabase
参数调用mongoimport时指定。可以检查所有参数here。
答案 5 :(得分:0)
为在使用MongoDB Atlas时遇到相同问题的用户添加答案。
我尝试遵循Seed with mongorestore和Load File with mongoimport之类的官方指南,但收到相同的no reachable servers
错误。
我试图一遍又一遍地更改命令参数-没有任何改变。
但是随后我在集群内部导航至“命令行工具”选项卡,并看到了我应该为mongorestore
,mongodump
,{{1}运行的确切命令 },mongoimport
等:
以内联方式添加完整命令:
mongoexport
mongorestore --host
<cluster-name>-shard-0/
<cluster-name>-shard-00-00-obe3i.mongodb.net:27017,
<cluster-name>-shard-00-01-obe3i.mongodb.net:27017,
<cluster-name>-shard-00-02-obe3i.mongodb.net:27017
--ssl
--username <User-Name>
--password <PASSWORD>
--authenticationDatabase admin
命令可以替换为mongorestore
,mongodump
,mongoimport
等。
(*)最好直接从仪表板复制命令,因为副本集的DNS可能会更改。
(**)MongoDB Shell版本v4.2.5。