MongoDB基础之八 备份与恢复
Mongodb导出与导入
1: 导入/导出可以操作的是本地的mongodb服务器,也可以是远程的.
所以,都有如下通用选项:
-h host 主机
--port port 端口
-u username 用户名
-p passwd 密码
2: mongoexport 导出json格式的文件
问: 导出哪个库,哪张表,哪几列,哪几行?
-d 库名
-c 表名
-f field1,field2...列名
-q 查询条件
-o 导出的文件名
-- csv 导出csv格式(便于和传统数据库交换数据)
例1:导出 stu表 sn小于1000的 sn 和 name 注: _id列总是导出
# ./bin/mongoexport -u testUser -p 1234 -d test -c stu -f sn,name -q '{sn:{$lte:1000}}' -o ./test.stu.json connected to: 127.0.0.1 exported 1000 records [root@localhost mongodb]# ll 总用量 156 drwxr-xr-x 2 root root 4096 5月 23 10:43 bin -rw------- 1 hadoop hadoop 34520 8月 4 2013 GNU-AGPL-3.0 -rw------- 1 hadoop hadoop 1359 8月 4 2013 README -rw-r--r-- 1 root root 86786 5月 25 10:12 test.stu.json -rw------- 1 hadoop hadoop 18436 8月 4 2013 THIRD-PARTY-NOTICES
例2:导出stu表 csv的格式
./bin/mongoexport -u testUser -p 1234 -d test -c stu -f sn,name -q '{sn:{$lte:10}}' -o ./test.stu.csv
查看 导出的 csv文件
# more test.stu.csv sn,name 1.0,"student1" 2.0,"student2" 3.0,"student3" 4.0,"student4" 5.0,"student5" 6.0,"student6" 7.0,"student7" 8.0,"student8" 9.0,"student9" 10.0,"student10"
3.Mongoimport 导入
-d 待导入的数据库
-c 待导入的表(不存在会自己创建)
--type csv/json(默认)
--file 备份文件路径
例1: 导入json
# ./bin/mongoimport -u testUser -p 1234 -d test -c animal --type json --file ./test.stu.json
例2: 导入csv 注: --headerline 跳过列名
/bin/mongoimport -u testUser -p 1234 -d test -c bird -f sn,name --type csv --headline --file ./test.stu.csv
4.Mongodump 导出二进制bson结构的数据及其索引信息
-d 库名
-c 表名
-f field1,field2...列名
mongodum -d test [-c 表名] 默认是导出到mongo下的dump目录
规律:
1:导出的文件放在以database命名的目录下
2: 每个表导出2个文件,分别是bson结构的数据文件, json的索引信息
3: 如果不声明表名, 导出所有的表
mongorestore 导入二进制文件
例:
./bin/mongorestore -d test --directoryperdb dump/test/ (mongodump时的备份目录)
二进制备份,不仅可以备份数据,还可以备份索引,
备份数据比较小.
例:单表的备份和恢复
1.dump tea 表
./bin/mongodump -u testUser -p 1234 -d test -c tea
2.查看 dump文件
# ll dump/test 总用量 8 -rw-r--r-- 1 root root 151 5月 25 10:37 tea.bson -rw-r--r-- 1 root root 179 5月 25 10:37 tea.metadata.json
3.删除 tea 表
> db.tea.drop(); true > show tables animal bird shop stu system.indexes system.users >
4.还原 tea 表 并查看记录 还原成功
./bin/mongorestore -u testUser -p 1234 -d test --collection tea dump/test/tea.bson > db.tea.find() { "_id" : ObjectId("5743d98aaddef29711337fb4"), "email" : "a@163.com" } { "_id" : ObjectId("5743d98daddef29711337fb5"), "email" : "b@163.com" } { "_id" : ObjectId("5743d9cfaddef29711337fb7"), "email" : "c@163.com" } { "_id" : ObjectId("5743dc98addef29711337fbc") }
- MongoDB JAVA API Filters
- mongodb学习之id自增
- MongoDB快速翻页的方法
- mongodb用子文档做为查询条件的两种方法
- Ubuntu安装mongoDB
- MongoDB快速翻页的方法
- MongoDB快速入门学习笔记1 windows安装MongoDB
- mongodb安装与启动
- MongoDB 学习笔记(一)-MongoDB配置
- MongoDB创建数据库和删除数据库
- mongodb中$regex的用法
- MongoDB北大绿卡之安全建议
- mongodb各种导出导入数据的方法
- MongoDB windows64及32位安装
- MongoDB基础之七 用户管理
- MongoDB基础之六 索引
- 欢迎使用CSDN-markdown编辑器
- mongodb.conf配置文件详解
- 关于用mongodb java api 来实现在$project中使用$substr函数的方法
- mongodb安装配置