导出:mongoexpert命令格式,这个是不导出索引的
mongoexpert -h host -p port -u username -p passwd
-d database 要导出的库
-c collection要导出的collection
-f 要导出的列
-q 查询条件
-o 导出文件名
--csv 导出csv格式(便于和传统数据库交换)
mongoexpert -d test -c stu -f sn,name -o test.dat -q '{sn:{$gte:124}}' --csv;
导入:mongoimport
-d 待导入的数据库
-c 待导入的表
--type json(默认) / csv
--file 备份文件路径(这个是要导入的文件)
-f 指定列的名称
--headline 将第一行当作列名,不作为对象导入
导入json
mongoimport -d test -c goods --file ./good.json
导入csv
mongoimport -d test -c goods --type csv --headline -f goods_id,goods_name --file ./goods.csv
Mongodump 导出二进制bson及索引信息, 二进制的速度快,备份数据小
-d 库名
-c 表名
-f field1,field2...列名
eg:
mongodump -d test [-c 表名] 默认导出到mongo下的dump目录
规律:
- 导出的文件放在以database命名的目录下
- 每个表导出2个文件,分别是bson结构的数据文件,json的索引信息,备份形成 test.bson 和 test.metadata.json两个文件
- 如果不声明,导出所有的表
导入二进制文件
mongorestore -d test --directoryperdb dump/test // (test是mongodump时的备份目录)