连接到远程mongodb服务器并运行克隆

时间:2013-11-30 02:54:03

标签: mongodb migration mongo-shell

我正从旧托管公司的服务器OLD迁移到新托管公司的服务器NEW。

我想运行clone命令,所以我将mongoDB从OLD克隆到NEW。

对于OLD: 公共IP地址是:44.55.66.77。 机器登录用户名为:admin,密码为密码

这样做的正确方法是什么?

到目前为止,我甚至无法登录服务器OLD

到目前为止,我在NEW上尝试了以下命令提示:

mongo -u admin -p password 44.55.66.77

mongo remote-ip:44.55.77.66 -u admin -p password

那不起作用

我也是从mongo shell尝试过的:

db.CopyDatabase('OldDb', 'NewDb', '44.55.66.77', 'admin', 'password')

我得到:“无法连接到服务器”错误消息

1 个答案:

答案 0 :(得分:0)

除了防火墙注意事项,为了在MongoDB服务器之间复制数据,db.copyDatabase()(又名copydb命令)有一些重要的usage caveats,包括:

  • copydb不会生成源数据库的时间点快照;在复制过程中将数据写入源数据库或目标数据库将导致不同的数据集
  • copydb在操作期间不会锁定目标服务器,因此副本有时会产生以允许其他操作完成。

如果您启用了身份验证,还有一个已知的问题copydb可能无法与MongoDB 2.4中基于角色的权限一起使用(请参阅最近在2.5.x开发中修复的SERVER-8213版本)。

迁移数据的更好方法是使用mongodump / mongorestore或文件系统快照从正常备份恢复。 MongoDB手册的Backup & Recovery部分提供了有关不同部署类型的过程的教程。