How to connect Robomongo to MongoDB
Solution 1
I was able to connect Robomongo to a remote instance of MongoDB running on Mongo Labs using the connection string as follows:
-
Download the latest version of Robomongo. I downloaded 0.9 RC6 from here.
-
From the connection string, populate the server address and port numbers as follows.
-
Populate DB name and username and password as follows under the authentication tab.
-
Test the connection.
Solution 2
Note: Commenting out bind_ip can make your system vulnerable to security flaws. Please see Security Checklist. It is a better idea to add more IP addresses than to open up your system to everything.
You need to edit your /etc/mongod.conf file's bind_ip variable to include the IP of the computer you're using, or eliminate it altogether.
I was able to connect using the following mongod.conf file. I commented out bind_ip and uncommented port.
# mongod.conf
# Where to store the data.
# Note: if you run MongoDB as a non-root user (recommended) you may
# need to create and set permissions for this directory manually.
# E.g., if the parent directory isn't mutable by the MongoDB user.
dbpath=/var/lib/mongodb
# Where to log
logpath=/var/log/mongodb/mongod.log
logappend=true
port = 27017
# Listen to local interface only. Comment out to listen on all
interfaces.
#bind_ip = 127.0.0.1
# Disables write-ahead journaling
# nojournal = true
# Enables periodic logging of CPU utilization and I/O wait
#cpu = true
# Turn on/off security. Off is currently the default
#noauth = true
#auth = true
# Verbose logging output.
#verbose = true
# Inspect all client data for validity on receipt (useful for
# developing drivers)
#objcheck = true
# Enable db quota management
#quota = true
# Set oplogging level where n is
# 0=off (default)
# 1=W
# 2=R
# 3=both
# 7=W+some reads
#diaglog = 0
# Ignore query hints
#nohints = true
# Enable the HTTP interface (Defaults to port 28017).
#httpinterface = true
# Turns off server-side scripting. This will result in greatly limited
# functionality
#noscripting = true
# Turns off table scans. Any query that would do a table scan fails.
#notablescan = true
# Disable data file preallocation.
#noprealloc = true
# Specify .ns file size for new databases.
# nssize = <size>
# Replication Options
# In replicated MongoDB databases, specify the replica set name here
#replSet=setname
# Maximum size in megabytes for replication operation log
#oplogSize=1024
# Path to a key file storing authentication info for connections
# between replica set members
#keyFile=/path/to/keyfile
Don't forget to restart the mongod service before trying to connect:
service mongod restart
From Robomongo, I used the following connection settings:
Connection Tab:
- Address: [VPS IP] : 27017
SSH Tab:
-
SSH Address: [VPS IP] : 22
-
SSH User Name: [Username for sudo enabled user]
-
SSH Auth Method: Password
-
User Password: Supersecret
Solution 3
-
First you have to run the
mongod
command in your terminal. Make sure the command executes properly. -
Then in a new terminal tab run the
mongo
command. -
Then open the Robomongo GUI and create a new connection with the default settings.
Solution 4
It looks like Robomongo does not yet work with MongoDB 3:
Can't Connect to Mongo 3.0 DB server #771
Solution 5
Currently, Robomongo 0.8.x doesn't work with MongoDB 3.0:
- MongoDB and Robomongo: Can't connect (authentication)
- Add support for SCRAM-SHA-1 authentication (MongoDB 3.0+) #766
For now, don't use Robomongo. For me, the best solution is to use MongoChef.
Related videos on Youtube
Karishma Dudhbade
Updated on July 09, 2022Comments
-
Karishma Dudhbade almost 2 years
I am have MongoDB and Robomongo in my running system, and I am using Robomongo as the client.
I have installed MongoDB on a different system which I am treating as server, and I want to connect Robomongo of my system (as a client) to MongoDB on another system (server). What steps should I follow to achieve the same?
I am using the machine name, as the system's IP address is not static. But even if I use the system's IP address, I get the same error:
connect failed, can't connect couldn't connect to server W7IN05200067D:27017"
I am connecting to it directly, and I am not using any authentication.
-
sepehr over 9 yearsNarrow down the situation by using the IP for now. What port the remote mongod server is using? Is this the default 27017? Is the problem specific to robomongo?! Can you connect using
mongo
shell? You might need to change SSL/SSH settings. -
Admin over 8 yearsWhat is the alternative then ?
-
Yuri Dorokhov over 7 yearsI don't have
etc
folder andmongod.conf
in my Mongo folder. Do you know, was Mongo installed wrong on my machine or should it be added somehow? -
ShahNewazKhan over 7 years@YuriDorokhov sorry for the delayed response, /etc folder is in the root directory of your Linux installation not in the your Mongo folder.
-
xiao over 7 yearsDo not EVER comment out
bind_ip = 127.0.0.1
!!!!! You can add other IPs to it, but if you comment out bind_ip you are creating a potential security vulnerability allowing public access to your mongodb server. @ShahNewazKhan Please modify your post. See mongodb security checklist here docs.mongodb.com/manual/administration/security-checklist/… -
ShahNewazKhan over 7 years@linxtion thanks for the heads up, I have updated my answer accordingly
-
Daan over 6 yearsWorked like a charm! Thanks for the great explanation
-
Eray T over 5 yearsI have been having this issue and looking for answers for hours... This literally solved my problem. Thank you so much.
-
Jag about 3 yearsI would like keep my original answer and without any edits and with Typos....