假如未有用户什么人,能够去掉-u和-p。
壹旦导出本机的数据库,能够去掉-h。
只即使暗许端口,能够去掉–port。
若是想导出全部数据库,能够去掉-d。

1
2
3
[root@localhost mongodb]# mongoexport -d tank -c users -q '{uid:{$gt:1}}' -o tank/users.json
connected to: 127.0.0.1
exported 3 records

?

壹,常用命令格

上面包车型大巴参数好精晓,重点说一下:
-f    导出指字段,以字号分割,-f
name,email,age导出name,email,age那多个字段
-q    能够根查询条件导出,-q ‘{ “uid” : “十0” }’ 导出uid为十0的数目
–csv
代表导出的文件格式为csv的,这几个相比有用,因为多数的关系型数据库都以永葆csv,在此处有共同点

一,常用命令格式

三,导出钦定数据库

4,还原csv文件

 

贰,导出整张表

一,常用命令格式

mongodb数据备份和复苏主要分为两种,1种是对准于库的mongodump和mongorestore,壹种是对准库中表的mongoexport和mongoimport

三,mongorestore还原数据库

1,常用命令格式

1
2
3
[root@localhost mongodb]# mongoexport -d tank -c users -o /home/zhangy/mongodb/tank/users.dat
connected to: 127.0.0.1
exported 4 records
1
[root@localhost mongodb]# mongorestore /home/zhangy/mongodb/  #这里的路径是所有库的备份路径

?

四,根据规则敢出数据

壹,mongodump备份数据库

1
mongodump -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -o 文件存在路径
1
2
3
[root@localhost mongodb]# mongoexport -d tank -c users --csv -f uid,name,sex -o tank/users.csv
connected to: 127.0.0.1
exported 4 records

 
三,还原钦命的数据库

三,导出表中部分字段

二,导出全部数据库

二,恢复生机全数数据库到mongodb中

3,部分字段的表数据导入

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

二,还原导出的表数据

?

1
2
3
[root@localhost mongodb]# mongoimport -d tank -c users --type csv --headerline --file tank/users.csv
connected to: 127.0.0.1
Tue Dec 3 08:37:21.961 imported 4 objects

伍,mongoimport导入表,或然表中部分字段

1
2
3
4
5
6
7
8
9
10
11
[root@localhost mongodb]# mongodump -h 192.168.1.108 -d tank -o /home/zhangy/mongodb/
connected to: 192.168.1.108
Tue Dec 3 06:11:41.618 DATABASE: tank   to   /home/zhangy/mongodb/tank
Tue Dec 3 06:11:41.623   tank.system.indexes to /home/zhangy/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/zhangy/mongodb/tank/contact.bson
Tue Dec 3 06:11:41.669     2 objects
Tue Dec 3 06:11:41.670   Metadata for tank.contact to /home/zhangy/mongodb/tank/contact.metadata.json
Tue Dec 3 06:11:41.670   tank.users to /home/zhangy/mongodb/tank/users.bson
Tue Dec 3 06:11:41.685     2 objects
Tue Dec 3 06:11:41.685   Metadata for tank.users to /home/zhangy/mongodb/tank/users.metadata.json
1
mongoexport -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -c 表名 -f 字段 -q 条件导出 --csv -o 文件名

四,mongoexport导出表,也许表中部分字段

  
那3个指令,能够完毕数据库的备份与回复,文件格式是json和bson的。不或者指写到表备份也许恢复生机。

[root@localhost mongodb]# mongoimport -d tank -c users 
–upsertFields uid,name,sex  tank/users.dat  
connected to: 127.0.0.1  
Tue Dec  3 08:31:15.179 imported 4 objects 

?

1
2
3
[root@localhost mongodb]# mongorestore -d tank /home/zhangy/mongodb/tank/  #tank这个数据库的备份路径
  
[root@localhost mongodb]# mongorestore -d tank_new /home/zhangy/mongodb/tank/  #将tank还有tank_new数据库中

 

一.一,还原整表导出的非csv文件
mongoimport -h IP –port 端口 -u 用户名 -p 密码 -d 数据库 -c 表名
–upsert –drop 文件名  
关键说一下–upsert,别的参数方面包车型客车指令已有涉及,–upsert
插入可能更新现有数量
一.二,还原部分字段的导出文件
mongoimport -h IP –port 端口 -u 用户名 -p 密码 -d 数据库 -c 表名
–upsertFields 字段 –drop 文件名  
–upsertFields根–upsert一样
一.叁,还原导出的csv文件
mongoimport -h IP –port 端口 -u 用户名 -p 密码 -d 数据库 -c 表名 –type
类型 –headerline –upsert –drop 文件名  
地点二种状态,还足以有另向外排水列组合的。

1
2
3
[root@localhost mongodb]# mongoimport -d tank -c users --upsert tank/users.dat
connected to: 127.0.0.1
Tue Dec 3 08:26:52.852 imported 4 objects

 
–drop的趣味是,先删除全数的笔录,然后还原。

1
2
3
4
5
6
7
8
9
10
[root@localhost mongodb]# mongodump -h 127.0.0.1 -o /home/zhangy/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/zhangy/mongodb/test
Tue Dec 3 06:15:55.449   test.system.indexes to /home/zhangy/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/zhangy/mongodb/test/posts.bson
Tue Dec 3 06:15:55.480     0 objects
  
。。。。。。。。。。。。。。。。。。。。省略。。。。。。。。。。。。。。。。。。。。。。。。。。

相关文章

网站地图xml地图