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目录下执行!

    

posted @ 2018-11-30 11:07  王二黑  阅读(1652)  评论(0编辑  收藏  举报