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()