Error
Error Code:
7
MongoDB Error 7: Cannot Resolve Host
Description
This error indicates that the MongoDB client failed to resolve the hostname or IP address of the specified database server. It typically occurs when the client cannot establish a network connection to the target host due to naming resolution or network path issues.
Error Message
Host Not Found
Known Causes
3 known causesDNS Resolution Failure
The system's Domain Name System (DNS) is unable to translate the provided hostname into a valid IP address.
Incorrect Hostname/IP
The hostname or IP address specified in the MongoDB connection string or configuration is misspelled or invalid.
Network Connectivity Issues
The client machine cannot reach the specified host due to network problems like firewall blocks or routing issues.
Solutions
5 solutions available1. Check Hostname easy
Verify hostname is correct and resolvable
1
Test DNS resolution
nslookup mongodb.example.com
2
Use IP address to bypass DNS
mongosh "mongodb://192.168.1.100:27017/db"
2. Fix Connection String easy
Check for typos in hostname
1
Verify connection string
# Check spelling
mongosh "mongodb://mongo-server:27017" # Not mongo_server
# Check port
mongosh "mongodb://mongo:27017" # Default port
3. Update /etc/hosts easy
Add local DNS entry
1
Add to hosts file
# /etc/hosts
192.168.1.100 mongodb-server
4. Fix SRV Record Issues medium
For mongodb+srv:// connections
1
Check SRV record
nslookup -type=SRV _mongodb._tcp.cluster.mongodb.net
2
Use standard connection if SRV fails
# Instead of:
mongosh "mongodb+srv://user:pass@cluster.mongodb.net/db"
# Try:
mongosh "mongodb://user:pass@shard0.mongodb.net:27017/db?ssl=true"
5. Check Docker/Container Networking medium
Container hostnames need special handling
1
Use Docker network hostname
# In docker-compose, use service name:
mongodb://mongo:27017
# Not localhost from container perspective
2
Check Docker network
docker network ls
docker network inspect bridge