写在前面
本文已经假设你已经安装好了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去备份旧数据。
恢复
使用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的意思是删除库中原来的数据库并将数据库还原上去
此命令是在控制台中执行
更新日志
- 鸣潮桃祈阵容怎么搭配 最强阵容推荐
- dnf抗性怎么增加
- dnf护石可以分解吗
- dnf护石怎么合成
- 游侠晚报:《刺客信条影》预购火爆 IGN评最佳NS游戏
- 手办鉴赏室:妖精女王超帅气!阿尔托莉雅优雅战斗
- 《黑神话:悟空》将登陆WeGame!全新实机宣传片赏
- 白玛多吉《梦》限量1:1母盘直刻[低速原抓WAV+CUE]
- 林一峰2007-一期一会[香港首版][WAV+CUE]
- 林一峰2004-一个人在途上[LYFEMusic][WAV+CUE]
- 《黑神话:悟空》WeGame页面更新 删除D加密描述
- 《黑神话悟空》登热搜 网友:定价268元太良心了!
- 丧心病狂收割粉丝!《庆余年2》平均每集9个广告
- 【原神】V4.6攻略 | 旧日之海珍贵宝箱合集
- 【原神】素材之旅,冰雾花高效率长路线篇(85朵)