MongoDB 修仙指南 🐳
🌟 数据库御剑术
在这里你将习得:
- 安装大法:一键部署灵脉 🖥️
- 文档秘术:玩转JSON七巧板 🧩
- 索引真经:查询速度御剑飞行 🚀
- 聚合神通:数据炼丹炉 🔥
1. 安装四部曲 🛠️
1.1 添加灵脉源(APT源)
bash
# 导入天庭认证密钥
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
# 创建灵脉坐标
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list1.2 安装金丹(安装服务)
bash
sudo apt update && sudo apt install -y mongodb-org1.3 启动护山大阵
bash
sudo systemctl start mongod
sudo systemctl enable mongod验丹口诀:
bash
mongo --eval 'db.runCommand({ connectionStatus: 1 })'
# 看到"ok" : 1 说明筑基成功!2. 文档七巧板 📝
2.1 创建第一个仙府(数据库)
javascript
use my_first_realm
// 仙界法则:数据库懒加载,插入数据才真正创建2.2 弟子名录(集合操作)
javascript
// 创建修仙者名录
db.createCollection("cultivators")
// 自动创建集合(当插入文档时)
db.immortals.insertOne({ name: "韩立", level: "筑基期" })生活案例:就像Excel新建工作表,但更智能!
3. CRUD仙术大全 🧙♂️
3.1 点化弟子(Insert)
javascript
db.disciples.insertMany([
{ name: "南宫婉", sect: "掩月宗", age: 258 },
{ name: "厉飞雨", sect: "七玄门", age: 22 }
])3.2 神识扫描(Find)
javascript
// 查找所有筑基期以上修士
db.cultivators.find({ level: { $gt: "筑基期" } })3.3 修为突破(Update)
javascript
db.immortals.updateOne(
{ name: "韩立" },
{ $set: { level: "元婴期", weapon: "青竹蜂云剑" } }
)避坑指南:更新操作符$set是护身符,忘记使用会直接覆盖修为!
4. 索引御剑术 🗡️
4.1 创建本命法宝(单字段索引)
javascript
db.immortals.createIndex({ name: 1 })4.2 复合法宝(组合索引)
javascript
db.cultivators.createIndex({ sect: 1, level: -1 })| 索引类型 | 修炼速度 | 适用场景 |
|---|---|---|
| 单字段 | ⚡️ | 精准查询 |
| 复合索引 | 🚀 | 多条件查询 |
| 全文索引 | 🌪️ | 经文搜索 |
5. 聚合炼丹炉 🔥
javascript
db.sect.aggregate([
{ $match: { size: { $gt: 100 } } }, // 筛选大宗门
{ $group: {
_id: "$region",
totalMembers: { $sum: "$members" }
}},
{ $sort: { totalMembers: -1 } }
])炼丹比喻:就像把灵草(数据)放入丹炉,经过多道工序(管道阶段),最终炼成仙丹(结果)!
6. 复制集与分片 🌀
6.1 分身术(复制集)
yaml
# 配置复制集
replication:
replSetName: "immortal_rs"6.2 法天象地(分片集群)
javascript
sh.addShard("shard1_replica_set/mongo1:27017")
sh.enableSharding("immortal_database")架构图: 主节点(掌门) ←→ 从节点(长老)
分片1(东荒) ↔ 分片2(南域) ↔ 分片3(北原)
📜 MongoDB修仙口诀
安装配置三板斧,CRUD是基本功
索引就像御剑术,聚合管道炼丹炉
复制分片抗天劫,文档模型最灵活
ObjectId是身份证,更新操作要记清
🚨 渡劫注意事项
- 生产环境必启用认证:洞府大门要上锁
- 定期备份:时间回溯术要常备
- 监控慢查询:心魔要及时发现
- 合理分片:宗门太大要分堂管理
- 版本升级:修炼新功法提升境界
🎁 飞升技巧
javascript
// 时空法术(TTL索引)
db.logs.createIndex({ createTime: 1 }, { expireAfterSeconds: 3600 })
// 乾坤袋(压缩存储)
db.runCommand({ compact: "cultivators" })