mongodb数据库导入导出恢复
一、mongodb 导出工具:mongoexport
1、概念:mongoexport可以把mongodb的collections导出为JSON或者csv格式的文件,根据参数指定导出的数据项,还可以根据参数筛选导出数据
2、语法:
mongoexport -h host -u username -p password -d dbname -c Collection -o /filePath.filename -type json/csv -f "field"
3.参数说明:
-h :要导出的数据库主机地址 -u :数据库用户名,没有可以不写 -p :数据库密码,没有可以不写 -d : 导出的数据库名 -c :导出的集合collection名 -o :导出到的文件路径文件名 -type :导出的类型:json 或者csv 如果是CSV格式,需要指定-f字段参数 -f :字段参数,要导出集合的字段名,也就是要导出那些列
-q :指出导出数据的过滤条件
4、示例:
sudo mongoexport -p 127.0.0.1 -d mymongo -c XuanKaoSubJects -o /home/wxx/users.csv --type csv -f "_id,user,age,status"
二、数据库导入:mongoimport
1、语法:
mongoimport -d dbname -c collectionname --file filename --headerline --type json/csv -f field --upsert
2、参数说明
-d :数据库名 -c :collection名 --type :导入的格式默认json -f :导入的字段名 --headerline :如果导入的格式是csv,则可以使用第一行的标题作为导入的字段 --file :要导入的文件
--upsert : 新增或者更新的方式导入数据库
3、示例
sudo mongoimport -d mongotest -c users --file /home/mongodump/articles.json --type json
三、mongodb数据库备份:mongodump
1、语法
mongodump -h dbhost -d dbname -o dbdirectory
2、参数说明
-h: MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017 -d: 需要备份的数据库实例,例如:test -o: 备份的数据存放位置,例如:/home/mongodump/,当然该目录需要提前建立,这个目录里面存放该数据库实例的备份数据。
3、示例
sudo rm -rf /home/momgodump/
sudo mkdir -p /home/momgodump/
sudo mongodump -h 192.168.17.129:27017 -d itcast -o /home/mongodump/
四、mongodb数据库恢复
1、语法
mongorestore -h dbhost -d dbname --dir dbdirectory
2、参数说明
-h: MongoDB所在服务器地址 -d: 需要恢复的数据库实例,例如:test,当然这个名称也可以和备份时候的不一样,比如test2 --dir: 备份数据所在位置,例如:/home/mongodump/itcast/ --drop: 恢复的时候,先删除当前数据,然后恢复备份的数据。就是说,恢复后,备份后添加修改的数据都会被删除,慎用
3、示例
mongorestore -h 192.168.17.129:27017 -d itcast_restore --dir /home/mongodump/itcast/
必须注意的是 执行mongoexport和mongoimport命令必须在mongo安装路径的bin目录下执行!