MongoDB administration involves managing and maintaining MongoDB deployments, ensuring optimal performance, security, and reliability. This guide covers essential administration tasks, tools, and best practices.
Key Areas of MongoDB Administration
// Create database
use myDatabase
// List databases
show dbs
// Drop database
db.dropDatabase()
// Create collection
db.createCollection("users")
// List collections
show collections
// Create user
db.createUser({
user: "admin",
pwd: "password",
roles: [
{ role: "userAdmin", db: "admin" },
{ role: "dbAdmin", db: "myDatabase" }
]
})
// List users
db.getUsers()
// Update user
db.updateUser("admin", {
roles: [
{ role: "readWrite", db: "myDatabase" }
]
})
// Server status
db.serverStatus()
// Current operations
db.currentOp()
// Database stats
db.stats()
// Compact collection
db.runCommand({ compact: "users" })
// Repair database
db.repairDatabase()
// Clean up unused indexes
db.collection.dropIndexes()
# Create backup
mongodump --db myDatabase --out /backup
# Restore from backup
mongorestore --db myDatabase /backup/myDatabase
// Enable authentication
security:
authorization: enabled
// Configure SSL
net:
ssl:
mode: requireSSL
PEMKeyFile: /etc/ssl/mongodb.pem
Optimize system settings for MongoDB performance
Configure memory settings for optimal performance
Optimize storage settings for better I/O performance
Now that you understand MongoDB administration, you can explore: