文档数据库服务支持使用 MongoDB 官方工具进行数据导入导出。用户可以下载 mongoexport/mongoimport 或者 mongodump/mongorestore 工具完成导入导出操作。
mongoexport/mongoimport 操作方法
mongoexport 将指定表中的数据导出为 JSON 格式。
使用 mongoexport 导出某个表的数据:
mongoexport --host=<ip> --port=<port> --username=<user> --password=<password> --authenticationDatabase=admin --db=<database> --collection=<collection> --out=xxx.json
执行完成后会在指定的输出文件中看到 JSON 格式的数据。
导出来的 JSON 数据可以通过 mongoimport 工具导入到其他实例或者其他表。
使用 mongoimport 将 JSON 数据导入到某个表中:
mongoimport --host=<ip> --port=<port> --username=<user> --password=<password> --authenticationDatabase=admin --db=<database> --collection=<collection> xxx.json
导入完成后,登录到目标实例上可以看到对应的库表中已经成功插入了数据。
mongodump/mongorestore 操作方法
mongodump 将指定实例或者库表中的数据导出为 BSON 格式,并且支持导出索引和 oplog, 支持指定 --gzip 进行数据压缩。
使用 mongodump 导出单个表的数据:
mongodump --host=<ip> --port=<port> --username=<user> --password=<password> --authenticationDatabase=admin --db=<database> --collection=<collection> --out=<dir>
导出完成后,会在指定的目录下看到对应的库表目录和文件。
如果不指定表名,则会导出指定数据库下的所有表数据:
mongodump --host=<ip> --port=<port> --username=<user> --password=<password> --authenticationDatabase=admin --db=<database> --out=<dir>
如果不指定数据库名和表名,则会导出整实例的所有库表数据,包括系统自带的 admin 数据库:
mongodump --host=<ip> --port=<port> --username=<user> --password=<password> --authenticationDatabase=admin --out=<dir>
mongorestore 工具能够将 mongodump 导出的数据恢复到文档数据库服务实例中。
例如,将上述 mongodump 备份出来的数据恢复到指定实例上:
mongorestore --host=<ip> --port=<port> --username=<user> --password=<password> --authenticationDatabase=admin <dir>