使用账户密码连接到指定服务器的数据库:
# mongo 192.168.1.11/mydb -u userkk -p userkk
redhat连接本地mongodb错误如下:
[root@localhost ~]# mongo 192.168.1.11/mydb -u userkk -p userkk
MongoDB shell version: 3.0.2
connecting to: 192.168.1.11/mydb
2015-05-11T06:26:54.981-0700 W NETWORK Failed to connect to 192.168.1.11:27017, reason: errno:111 Connection refused
2015-05-11T06:26:54.983-0700 E QUERY Error: couldn't connect to server 192.168.1.11:27017 (192.168.1.11), connection attempt failed
at connect (src/mongo/shell/mongo.js:181:14)
at (connect):1:6 at src/mongo/shell/mongo.js:181
exception: connect failed
[root@localhost ~]#
Windows连接到redhat的mongodb错误如下:
C:\Documents and Settings>mongo 192.168.1.11/mydb -u userkk -p userkk
MongoDB shell version: 2.6.5
connecting to: 192.168.1.11/mydb
2015-05-11T21:31:15.433+0800 warning: Failed to connect to 192.168.1.11:27017, reason: errno:10061
由于目标机器积极拒绝,无法连接。
2015-05-11T21:31:15.433+0800 Error: couldn't connect to server 192.168.1.11:27017 (192.168.1.11),
connection attempt failed at src/mongo/shell/mongo.js:148
exception: connect failed
原因:端口为绑定为服务器IP(192.168.1.11)
解决:
服务器端更改绑定IP,重启服务。
[root@localhost ~]# vi /etc/mongod.conf
bind_ip=127.0.0.1
改为:
bind_ip=192.168.1.11
[root@localhost ~]# service mongod restart
此时,redhat 连接本地 mongodb 正常;
但是,Windows 连接到 redhat 的 mongodb 错误;
错误如下:
C:\Documents and Settings>mongo 192.168.1.11/mydb -u userkk -p userkk
MongoDB shell version: 2.6.5
connecting to: 192.168.1.11/mydb
2015-05-11T21:48:06.542+0800 Error: 18 { ok: 0.0, errmsg: "auth failed", code: 18 }
at src/mongo/shell/db.js:1210
exception: login failed
看网上说是版本不同,我这是2.6.5,要连接的服务端是3.0.2 。
因为两版本的差异也是较大了,估计是这问题吧。百度谷歌也找不到更好的解释了。
如果 bing_ip 不是127.0.0.1 ,则连接到mongodb时,须指定IP地址,否则拒接访问