功能概述

MongoDB 支持使用 MongoDump 与 MongoRestore 工具,实现 MongoDB 数据迁移。

  • mongodump 是一个数据导出工具,可以将 MongoDB 中的数据导出。更多介绍可参考 官方文档

  • mongorestore 是一个数据导入工具,可以将 mongodump 导出的数据导入到 MongoDB 中,实现 MongoDB 数据的恢复。更多介绍可参考 官方文档

前提条件

在云服务器或本地服务器上安装 mongodumpmongorestore 工具,且安装工具的服务器与两个集群之间的网络通畅。

操作步骤

在安装有工具的服务器上,执行以下命令行,导出源集群数据。

命令行

$ mongodump --archive --username=<username_cluster1> --password=<password_cluster1> --authenticationDatabase=admin --host=<node_ip_cluster1> --db=<db_name_cluster1>

| mongorestore --archive --username=<username_cluster2> --password=<password_cluster2> --authenticationDatabase=admin --host=<node_ip_cluster2> --db=<db_name_cluster2>

参数说明

参数 说明

username_cluster1

源集群用户名,建议这里填写 root

password_cluster1

源集群用户名密码,建议这里填写 root 用户对应的密码。

node_ip_cluster1

源集群节点 IP 地址,这里填写源集群从节点或只读节点 IP 地址即可。

db_name_cluster1

源集群中,待导出数据的数据库名。

username_cluster2

目标集群用户名,建议这里填写 root

password_cluster2

目标集群用户名密码,建议这里填写 root 用户对应的密码。

node_ip_cluster2

目标集群节点 IP 地址,这里填写目标集群从节点 IP 地址即可。

db_name_cluster2

目标集群中,待导入数据的数据库名。

命令行示例

$ mongodump --archive --username=user001 --password=Pwd00001 --authenticationDatabase=admin --host=192.168.110.101 --db=db1

| mongorestore --archive --username=user002 --password=Pwd00002 --authenticationDatabase=admin --host=192.168.110.102 --db=db2