当前位置:嗨网首页>书籍在线阅读

03-复制数据库

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

22.1.1 复制数据库

复制MongoDB数据库 本节介绍一个数据库复制示例,演示使用命令copydb创建示例数据库拷贝的步骤。请执行如下步骤来创建示例数据库的拷贝。 1.确保启动了MongoDB服务器。 2.确保运行了生成数据库words的脚本文件code/hour05/generate_words.js。 3.使用下面的命令启动MongoDB shell: 4.使用下面的命令切换到数据库admin: 5.使用下面的命令创建数据库words的拷贝,并将其命名为words_copy: 6.使用下面的命令切换到数据库words_copy,并核实其中确实包含文档: ▲

在MongoDB中,可在服务器之间复制数据库,还可将数据库复制到当前服务器的其他位置。您可能需要复制数据库,这可能旨在将数据从要拆除的服务器中移走,也可能旨在提供多个用于不同目的的数据拷贝。

要在服务器之间复制数据库,需要在数据库admin中执行命令copydb。这个命令接受一个对象,其中包含如下参数。

  • fromhost:可选参数。指定源mongod实例的主机名,如果未指定,copydb将在当前MongoDB服务器内复制数据库。
  • fromdb:必须指定的参数。指定源数据库的名称。
  • todb:必须指定的参数。指定目标命名空间的名称。
  • slaveOk:可选的布尔参数。如果为true,copydb将从副本集的备份成员复制数据,也可从主成员复制数据。
  • username:可选参数。指定MongoDB服务器fromhost上的用户名凭证。
  • key:可选参数。指定向fromhost服务器验证身份时使用的密码的散列值。

▼ Try It Yourself

mongo
use admin
db.runCommand({ copydb: 1,
   fromhost: "localhost",
   fromdb: "words",
   todb: "words_copy"})
use words_copy
db.word_stats.find().count()