mongodb备份数据库

来源:互联网 发布:mac os 10.9.5 iso 编辑:程序博客网 时间:2024/06/07 02:16

mongodb备份还原数据库

1,常用命令格式

mongodump -h IP –port 端口 -u 用户名 -p 密码 -d 数据库 -o 文件存在路径
如果没有用户谁,可以去掉-u和-p。
如果导出本机的数据库,可以去掉-h。
如果是默认端口,可以去掉–port。
如果想导出所有数据库,可以去掉-d。

2,导出所有数据库

[root@localhost mongodb]# mongodump -h 127.0.0.1 -o /home/shone/mongodb/
connected to: 127.0.0.1
Tue Dec 3 06:15:55.448 all dbs
Tue Dec 3 06:15:55.449 DATABASE: test to /home/shone/mongodb/test
Tue Dec 3 06:15:55.449 test.system.indexes to /home/shone/mongodb/test/system.indexes.bson
Tue Dec 3 06:15:55.450 1 objects
Tue Dec 3 06:15:55.450 test.posts to /home/shone/mongodb/test/posts.bson
Tue Dec 3 06:15:55.480 0 objects

3,导出指定数据库

[root@localhost mongodb]# mongodump -h 192.168.1.108 -d tank -o /home/shone/mongodb/
connected to: 192.168.1.108
Tue Dec 3 06:11:41.618 DATABASE: tank to /home/shone/mongodb/tank
Tue Dec 3 06:11:41.623 tank.system.indexes to /home/shone/mongodb/tank/system.indexes.bson
Tue Dec 3 06:11:41.623 2 objects
Tue Dec 3 06:11:41.623 tank.contact to /home/shone/mongodb/tank/contact.bson
Tue Dec 3 06:11:41.669 2 objects
Tue Dec 3 06:11:41.670 Metadata fortank.contact to /home/shone/mongodb/tank/contact.metadata.json
Tue Dec 3 06:11:41.670 tank.usersto /home/shone/mongodb/tank/users.bson
Tue Dec 3 06:11:41.685 2 objects
Tue Dec 3 06:11:41.685 Metadata fortank.usersto /home/shone/mongodb/tank/users.metadata.json

注意:如果想从某个服务器导出数据库到另外一个服务器,则先运行上面的指令导出数据库,然后将导出的数据库文件拷贝到指定的服务器上,然后再运行下面的指令还原数据库

三,mongorestore还原数据库

1,常用命令格式

[root@localhost mongodb]# mongorestore /home/shone/mongodb/ #这里的路径是所有库的备份路径

1
mongorestore -h IP –port 端口 -u 用户名 -p 密码 -d 数据库 –drop 文件存在路径

–drop的意思是,先删除所有的记录,然后恢复。

2,恢复所有数据库到mongodb中

[root@localhost mongodb]# mongorestore /home/shone/mongodb/ #这里的路径是所有库的备份路径

3,还原指定的数据库

[root@localhost mongodb]# mongorestore -d tank /home/shone/mongodb/tank/ #tank这个数据库的备份路径

[root@localhost mongodb]# mongorestore -d tank_new /home/shone/mongodb/tank/ #将tank还有tank_new数据库中
这二个命令,可以实现数据库的备份与还原,文件格式是json和bson的。无法指写到表备份或者还原。

0 0
原创粉丝点击