我试图在Mac下使用Robomongo(或Robo 3T)来控制远程Ubuntu& amp;中的mongodb。 Nginx服务器。
通常,我需要在终端中ssh xxx.xx.xx.xx
使用用户名和密码连接到服务器。在/etc/nginx/sites-enabled/myweb.io
中,有listen 443 ssl
。
在Robo 3T中,我尝试与Use SSH tunnel
建立连接。我尝试了端口号443
或80
。但它给了我一个错误:Error: Resource temporarily unavailable. Error when starting up SSH session: -13. (Error #35)
有谁知道如何解决这个问题?
答案 0 :(得分:9)
正确的设置是
1)在SSH
下,检查User SSH tunnel
,使用端口22
2)在Connection
下,写下127.0.0.1:27017
答案 1 :(得分:2)
使用Roto3t连接到远程MongoDB
首先,我们应该检查标准URI connection scheme
为mongodb
mongodb://[username:password@]host1[:port1][,...hostN[:portN]]][/[database][?options]]
我们在Cloudfoundry上向远程SSH Connection
制作了MongoDB
就我而言
cf ssh -L port_forwarding:HOST_NAME:Port NAME_OF_APP
(1)在Connection
的{{1}}标签中,选择
Robo3T
(2)在Type: direct connection
Name: choose_any_connection_name
Address: localhost and port is 'port_forwarding' we choose in the SSH connection we made.
标签中,我们应添加Authentication
,database
,username
和password
Auth Machanism: SCRAM-SHA-1
标签中的(3)中,我们将取消手动选中的SSH
。
现在,如果单击“测试”,则连接应该成功完成。
注意:如果我们使用Studio 3T,它将解析URI并为我们填充所有这些字段。
答案 2 :(得分:0)
为了在Robo 3T GUI上成功远程连接MongoDB,我在Ubuntu 18 Vagrant盒上做了一些配置。我已经按照以下步骤进行了说明。
$ mongo
在mongo shell中,键入以下命令以创建新的admin用户。
> use admin;
> db.createUser({user:"admin", pwd:"password", roles:[{ role: "root", db: "admin" }]});
默认情况下,将mongodb配置为仅允许来自localhost(IP 127.0.0.1)的连接。我们需要允许来自任何IP地址的远程连接。以下更改仅应在开发服务器中进行。打开 etc / mongod.conf 文件并进行以下更改。
# network interfaces
net:
port: 27017
bindIp: 0.0.0.0 #default value is 127.0.0.1
还使用相同的 mongod.conf 文件取消注释安全性选项,并添加 authorization 选项,如下所示。
security:
authorization: enabled
保存并退出 mongod.conf 文件,然后重新启动mongodb服务器。
$ sudo servcie mongod restart
下载并安装Robo 3T GUI工具。
在Robo 3T GUI的连接设置中,您需要进行一些更改,如下所示: 屏幕截图下方。
输入您之前创建的mongodb admin 数据库用户名和密码。
在这里,我已经输入了Ubuntu 18 Vagrant box ssh凭证。
保存更改,然后按 connect 图标,查看连接是否正常。