MongoDB 4.0.10 导出、导入,备份、恢复
- 下面四个命令都有的参数
1 # -h,--host :代表远程连接的数据库地址,默认连接本地Mongo数据库 2 # --port:代表远程连接的数据库的端口,默认连接的远程端口27017 3 # -u,--username:代表连接远程数据库的账号,如果设置数据库的认证,需要指定用户账号 4 # -p,--password:代表连接数据库的账号对应的密码
- mongoexport:将MongoDB集合中的数据导出到JSON格式或者CSV格式的文件
1 mongoexport --help 2 # 本地Scrapy_A数据库的images360集合的id,title,url属性,端口27017,导出格式为json,文件为images360.json 3 mongoexport -u scrapy -p 123456 -d Scrapy_A -c images360 -f id,title,url --type=json -o images360.json 4 # 本地Scrapy_A数据库的weibos集合的id,attitudes_count,comments_count,pictures属性,端口27017,导出格式为csv,文件为weibos.csv,筛选条件为picture is not null 5 mongoexport -u scrapy -p 123456 -d Scrapy_A -c weibos -f id,attitudes_count,comments_count,pictures --type=csv -o weibos.csv --query={picture:{$ne:null}} 6 # 本地mapdb数据库的bike集合的bId,lat,lng,ctime,source属性,端口27030,导出格式为json,文件为bike.json,筛选条件为source = "ofo",取一条 7 mongoexport --port 27030 -u scrapy -p 123456 -d mapdb -c bike -f bId,lat,lng,ctime,source --type=json -o bike.json --query={source:"ofo"} --limit=1 8 # 本地mapdb数据库的bike集合的bId,lat,lng,ctime,source属性,端口27030,导出格式为csv,文件为bike.csv,筛选条件为source = "ofo",取一条 9 mongoexport --port 27030 -u scrapy -p 123456 -d mapdb -c bike -f bId,lat,lng,ctime,source --type=csv -o bike.csv --query={source:"ofo"} --limit=1 10 11 # -d,--db:代表需要导出数据的数据库 12 # -c,--collection:代表需要导出数据的数据库中的集合 13 # -f, --fields:代表集合中的字段,可以根据设置选择导出的字段 14 # --type:代表导出输出的文件类型,包括csv和json文件 15 # -o, --out:代表导出的文件名 16 # -q, --query:代表查询条件 17 # --skip:跳过指定数量的数据 18 # --limit:读取指定数量的数据记录 19 # --sort:对数据进行排序,可以通过参数指定排序的字段,并使用1和-1来指定排序的方式,其中 1 为升序排列,而-1是用于降序排列,如sort({KEY:1}) 20 # 注意:当查询时同时使用sort,skip,limit,无论位置先后,最先执行顺序 sort再skip再limit
- mongoimport:将JSON格式或者CSV格式文件数据导入到MongoDB集合中
1 mongoimport --help 2 # 导入json数据格式数据时,不能使用-f,--fields 3 mongoimport -u DEV -p 123456 -d test -c images360 --type=json --file=images360.json 4 # -f和--headerline无法一块使用 5 mongoimport -u DEV -p 123456 -d test -c weibos -f id,attitudes_count,comments_count,pictures --type=csv --file=weibos.csv 6 mongoimport -u DEV -p 123456 -d test -c weibos --type=csv --file=weibos.csv --headerline 7 8 # -d,--db:代表导入数据的数据库 9 # -c,--collection:代表导入数据的数据库中的集合 10 # -f, --fields:代表导入集合中的字段 11 # --type:代表导入的文件类型,包括csv和json,tsv文件,默认json格式 12 # --file:导入的文件名称 13 # --headerline:导入csv文件时,指明第一行是列名,不需要导入
- mongodump:将MongoDB数据库或者MongoDB集合备份为BSON格式的二进制文件,同时备份索引信息
1 mongodump --help 2 mongodump -u scrapy -p 123456 -d Scrapy_A -c images360 -o DB 3 mongodump -u scrapy -p 123456 -d Scrapy_A -o DB 4 # 每个集合会导出2个文件,分别是bson结构的数据文件和json格式的索引信息 5 # 不声明集合名,则导出所有集合名 6 7 # -d,--db:代表需要备份的数据库 8 # -c,--collection:代表需要备份的数据库中的集合 9 # -q, --query:代表查询条件 10 # -o, --out:代表导出的文件夹名
- mongorestore:将备份的BSON文件和索引文件进行恢复到数据库中
1 mongorestore --help 2 mongorestore -u scrapy -p 123456 -d Scrapy_A --dir=C:\Windows\System32\DB\Scrapy_A 3 mongorestore -u scrapy -p 123456 -d Scrapy_A -c weibos --dir=C:\Windows\System32\DB\Scrapy_A\weibos.bson 4 5 # -d,--db:代表需要恢复的数据库 6 # -c,--collection:代表需要恢复的数据库中的集合,当数据来源于一个bson文件使用 7 # --dir:备份数据所在位置,可以是文件夹也可以是一个bson文件 8 # --drop:在恢复的时候,先删除当前数据,然后恢复备份的数据