在 MongoDB 中,没有直接的 plain复制 rename database 命令
copydatabase()已过期
copydatabase()已过期
copydatabase()已过期
方法1:使用plain复制mongodump和plain复制mongorestore(适合大型数据库)
1 | # 1. 导出旧数据库 |
方法2:使用plain复制mongosh的聚合管道(MongoDB 4.2+)
1 | // 遍历所有集合并复制 |
⚠️ 注意事项
| 项目 | 说明 |
|---|---|
| 索引 | 复制后需要重新创建索引 |
| 用户权限 | 数据库用户不会自动复制,需手动创建 |
| 磁盘空间 | 确保有足够空间存储两份数据 |
| 生产环境 | 建议在维护窗口操作,或先备份 |
快速检查命令
1 | // 查看所有数据库 |
**推荐在生产环境使用 plain复制 mongodump/mongorestore**,更加稳定可靠,且可以验证数据完整性。