写在前面

本文已经假设你已经安装好了Mongodb(2.6),并且已经开启了auth。

用户

首先我们添加备份和恢复数据所需的用户,这个用户需要有readWrite和userAdmin权限
复制代码 代码如下:
$ mongo
$ use admin
$ db.auth("admin", "youradminpasswd");
$ use backupdb
$ db.addUser({ user: "backup", pwd: "passwd", roles: [ "readWrite", "userAdmin" ] })

备份

注:此命令是在控制台中执行
我们使用mongodump来进行数据的备份(注意:mongodump不会备份local数据库中内容)。

mongodump可以通过以下两种方式来进行数据的备份:

连接到mongod或者mongos

直接访问数据文件

这个工具可以备份整个服务器、单个database或者单个collection的数据,也可以通过查询语句只备份collection中的部分数据。

如果不带任何参数直接执行mongodump,那么它会去连接本地(127.0.0.1或者localhost)27017端口上的MongoDB实例,并且会创建名为dump的备份。
复制代码 代码如下:
$ mongodump --host mongodb.example.net --port 27017 --db test --collection some --username backup --password passwd

以上会使mongodump连接到mongodb.example.net:27017上的mongod,并且把dbtest中的somecollection备份到dump目录下

注意:从Mongodb2.2版本开始,mongodump使用的数据格式与旧版本的mongod实例不兼容。所以不要使用新版本(>=2.2)的mongodump去备份旧数据。

Mongodb数据库的备份与恢复操作实例


恢复

使用mongodump备份的数据,需要使用mongorestore来恢复。

mongorestore恢复数据的方式与mongodump相对应,也是分为两种:

连接到mongod或者mongos

直接写入到数据文件

mongorestore既可以恢复整个备份也可以恢复一部分。
复制代码 代码如下:
$ mongorestore --host mongodb.example.net --port 27017 --db test --collection some --username backup --password password /data/backup

以上会从/data/backup中恢复数据,其中只恢复testdb中somecollection到mongodb.example.net:27017中。如果不指定--host和--portoption,那么mongorestore会默认使用localhost:27017。

注:在还原时必需在将要还原的数据库上新建将要还原的数据与所属的用户   --drop的意思是删除库中原来的数据库并将数据库还原上去
此命令是在控制台中执行

Mongodb数据库的备份与恢复操作实例

标签:
Mongodb数据库,备份与恢复操作

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
评论“Mongodb数据库的备份与恢复操作实例”
暂无“Mongodb数据库的备份与恢复操作实例”评论...

P70系列延期,华为新旗舰将在下月发布

3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。

而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?

根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。