mirror of
https://github.com/BagelHole/DevOps-Security-Agent-Skills.git
synced 2026-08-22 12:49:53 +02:00
80 lines
1.2 KiB
Markdown
80 lines
1.2 KiB
Markdown
---
|
|||
|
|
name: mongodb
|
||
|
|
description: Administer MongoDB databases. Configure replica sets, sharding, and backups. Use when managing MongoDB deployments.
|
||
|
|
license: MIT
|
||
|
|
metadata:
|
||
|
|
author: devops-skills
|
||
|
|
version: "1.0"
|
||
|
|
---
|
||
|
|
|
||
|
|
# MongoDB
|
||
|
|
|
||
|
|
Administer MongoDB NoSQL databases.
|
||
|
|
|
||
|
|
## Installation & Setup
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# Install
|
||
|
|
apt install mongodb-org
|
||
|
|
|
||
|
|
# Start service
|
||
|
|
systemctl start mongod
|
||
|
|
|
||
|
|
# Connect
|
||
|
|
mongosh
|
||
|
|
|
||
|
|
# Create user
|
||
|
|
use admin
|
||
|
|
db.createUser({
|
||
|
|
user: "admin",
|
||
|
|
pwd: "secret",
|
||
|
|
roles: ["root"]
|
||
|
|
})
|
||
|
|
```
|
||
|
|
|
||
|
|
## Basic Operations
|
||
|
|
|
||
|
|
```javascript
|
||
|
|
// Create database and collection
|
||
|
|
use mydb
|
||
|
|
db.users.insertOne({ name: "John", email: "john@example.com" })
|
||
|
|
|
||
|
|
// Query
|
||
|
|
db.users.find({ name: "John" })
|
||
|
|
db.users.find().sort({ name: 1 }).limit(10)
|
||
|
|
|
||
|
|
// Index
|
||
|
|
db.users.createIndex({ email: 1 }, { unique: true })
|
||
|
|
```
|
||
|
|
|
||
|
|
## Replica Set
|
||
|
|
|
||
|
|
```javascript
|
||
|
|
// Initialize replica set
|
||
|
|
rs.initiate({
|
||
|
|
_id: "myReplicaSet",
|
||
|
|
members: [
|
||
|
|
{ _id: 0, host: "mongo1:27017" },
|
||
|
|
{ _id: 1, host: "mongo2:27017" },
|
||
|
|
{ _id: 2, host: "mongo3:27017" }
|
||
|
|
]
|
||
|
|
})
|
||
|
|
```
|
||
|
|
|
||
|
|
## Backup
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# Backup
|
||
|
|
mongodump --out /backup/
|
||
|
|
|
||
|
|
# Restore
|
||
|
|
mongorestore /backup/
|
||
|
|
```
|
||
|
|
|
||
|
|
## Best Practices
|
||
|
|
|
||
|
|
- Use replica sets in production
|
||
|
|
- Implement proper indexing
|
||
|
|
- Enable authentication
|
||
|
|
- Regular backups with mongodump
|