某些时候,我们需要迅速根据已存在的库创建一个新的库。
mongodb提供了一个方法db.copyDatabase()可以快速将已存在的库拷贝为一个新库。
使用方法
直接在目标实例端执行:
db.copyDatabase(fromdb, todb, fromhost, username, password, mechanism)说明
db.copyDatabase()本方法fromdb源库todb目标库fromhost源服务器的主机名,省略为复制同一个mongod实例的数据库。username源服务器用户,可空password源服务器密码,可空mechanism源服务器加密方式,可空
注意事项
- 在目标实例执行。
- 如果目标库不存在,会被创建。
- 如果目标库存在,但是不存在源库中的集合,会成功复制。
- 如果目标库中存与源库重复的集合,复制会失败。
举例
下面为复制成功:
>db.copyDatabase("qiansw.com","new.qiansw.com","localhost")
{ "ok" : 1 }下面因为目标库重复,报错:
> db.copyDatabase("qiansw.com","new.qiansw.com")
{ "ok" : 0, "errmsg" : "collection already exists", "code" : 48 }本文参考了官网文档:db.copyDatabase
这篇文章还没有人留言,快来抢沙发吧。