mongodb 备份、还原、导入、导出
mongodump备份数据库
常用的备份命令格式
mongodump -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -o 文件存在路径
如果想导出所有数据库,可以去掉-d
-h:
MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017
--port:
端口号。
-d:
需要备份的数据库实例,例如:test
-o:
备份的数据存放位置,例如:/data/backup,当然该目录需要提前建立,在备份完成后,系统自动在dump目录下建立一个test(test是备份的数据库名)目录,这个目录里面存放该数据库实例的备份数据。
导出某个数据库实例
mongodump -h 192.168.144.25 --port 33988 -d liangdb -o /data/backup/
mongorestore还原数据库
常用命令格式
mongorestore -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 --drop 文件存在路径
--host <:port>, -h <:port>:
MongoDB所在服务器地址,默认为: localhost:27017
--db , -d :
需要恢复的数据库实例,例如:test,当然这个名称也可以和备份时候的不一样,比如test2
--drop:
如果某个集合在目标库中存在,不加此参数则不会覆盖,加此参数先删除所有的记录,然后恢复。恢复的时候,先删除当前数据,然后恢复备份的数据。就是说,恢复后,备份后添加修改的数据都会被删除!此参数要慎用。
<path>:
mongorestore 最后的一个参数,设置备份数据所在位置,例如:c:\data\dump\test。
你不能同时指定 <path> 和 --dir 选项,--dir也可以设置备份目录。
--dir:
指定备份的目录
不能同时指定 <path> 和 --dir 选项。
导入某个库实例
mongorestore -h192.168.114.25 --port 33988 -d liangdb /data/backup/liangdb
mongoexport导出表,或者表中部分字段
常用命令格式
mongoexport -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -c 集合名 -f 字段
-q 条件导出 --csv -o 文件名 上面的参数好理解,重点说一下:
-f 导出指字段,以字号分割,-f name,email,age导出name,email,age这三个字段
-q 可以根查询条件导出,-q '{ "_id" : "10001" }' 导出uid为100的数据
--csv 导出的文件格式是csv的。
导出整张表
[root@localhost mongodb]# mongoexport -d test -c users -o /home/mongodb/test/users.dat
connected to: 127.0.0.1
exported 24 records
导出表中部分字段
[root@localhost mongodb]# mongoexport -d test -c users --csv -f uid,name,sex -o test/users.csv
connected to: 127.0.0.1
exported 24 records
根据条件到出数据
[root@localhost mongodb]# mongoexport -d test -c users -q '{uid:{$gt:1}}' -o test/users.json
connected to: 127.0.0.1
exported 12 records
mongoimport导入表,或者表中部分字段
还原整表导出的非csv文件
mongoimport -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -c 表名 --upsert --drop 文件名
重点说一下--upsert,其他参数上面的命令已有提到,--upsert 插入或者更新现有数据
还原部分字段的导出文件
mongoimport -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -c 表名 --upsertFields 字段 --drop 文件名
--upsertFields根--upsert一样
还原导出的csv文件
mongoimport -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -c 表名 --type 类型 --headerline --upsert --drop 文件名
上面三种情况,还可以有其他排列组合的。
还原导出的表数据
[root@localhost mongodb]# mongoimport -d test -c users --upsert test/users.dat
connected to: 127.0.0.1
............
部分字段的表数据导入
[root@localhost mongodb]# mongoimport -d test -c users --upsertFields uid,name,sex test/users.dat
connected to: 127.0.0.1
...............................................
还原csv文件
[root@localhost mongodb]# mongoimport -d test -c users --type csv --headerline --file test/users.csv
connected to: 127.0.0.1
...........................................
mongodb 备份、还原、导入、导出的更多相关文章
- consul备份还原导入导出
工作中要保证生产环境部署的consul的集群能够安全稳定地对外提供服务,即使出现系统故障也能快速恢复,这里将讲述部分的备份还原操作及KV的导入导出操作. 备份与还原 需要备份的主要有两类数据:cons ...
- mongdb 备份还原导入导出
-------------------MongoDB数据导入与导出------------------- 1.导出工具:mongoexport 1.概念: mongoDB中的m ...
- MongoDB系列----备份与导入导出
参考: http://my.oschina.net/xiaomaoandhong/blog/63471,<> 1.停掉服务器 然后备份 Mongodb将所有数据都存放在"数据目录 ...
- mongodb 备份 还原 导出 导入
张映 发表于 2013-12-03 分类目录: nosql 标签:mongodb, 备份, 导入, 导出, 还原 mongodb数据备份和还原主要分为二种,一种是针对于库的mongodump和mong ...
- docker备份mongodb数据,导入导出
场景:服务器要升级,之前在linux部署的mongodb没有用docker,升级后,mongodb要用docker部署,并将原有的mongodb数据导入到docker部署的mongodb中. 1.在l ...
- 一次生产环境下MongoDB备份还原数据
最近开发一个版本的功能当中用到了MongoDB分页,懒于造数据,于是就研究了下从生产环境上导出数据到本地来进行测试. 研究了一下,发现MongoDB的备份还原和MySQL语法还挺类似,下面请看详细介绍 ...
- mongodb 备份还原
一.简介 说起来数据库的“备份-还原”,在RDBMS系统中,都有很好的支持,也有很多选项可以设置,功能强大,也能自动完成大部分的备份功能,只要当初设置好了就可以了.对于MongoDB文档型的数据库来说 ...
- MongoDB备份与导入
导出mongodb的数据 mongodump -d nodes -o url 导入mongodb数据mongorestore --db nodes url 删除mongodb的数据库db.dropDa ...
- mongodb备份还原
备份:mongodump mongodump常用参数 --db:指定导出的数据库 --collection:指定导出的集合 --excludeCollection:指定不导出的集合 --host :远 ...
- Mongodb 基础 数据导入导出和用户管理
数据导出 导出命令使用方式 mongoexport---->csv/json使用 参数: -d 库名 -c 表名 -f field1,field2....列名 -q 查询条件 -o 导出文件名 ...
随机推荐
- disruptor--Introduction
The best way to understand what the Disruptor is, is to compare it to something well understood and ...
- php对图片加水印--将一张图片作为水印加到另一张图片
代码如下: /** * 图片加水印(适用于png/jpg/gif格式) * * @param $srcImg 原图片 * @param $waterImg 水印图片 * @param $s ...
- django-admin管理后台高级自定义
django自带的admin后台管理系统,在很多网站中被称为django的杀手级的应用.那么django-admin的适用情形倒底有哪些呢,一般 来说对于大型的商业性的项目通常不用采用django-a ...
- What is the relation of theme and it's derived theme.
You know, a theme can derive from other theme in two ways: xx.xxx implicit way and parent="xxx& ...
- 360浏览器内核控制标签meta说明
浏览器内核控制标签meta说明 背景介绍 由于众所周知的原因,国内的主流浏览器都是双核浏览器:基于Webkit的内核用于常用网站的高速浏览,基于IE的内核主要用于部分网银.政府.办公系统等网站的正常使 ...
- 006服务监控看板Hystrix Dashboard
1.POM配置 和普通Spring Boot工程相比,仅仅添加了Hystrix Dashboard和Spring Boot Starter Actuator依赖 <dependencies> ...
- .NET开源工作流RoadFlow-流程运行-工作委托
如果某一个人某一段时间不在单位,则可以将自己的工作委托给他人代为处理. 在 流程处理-->工作委托 中可以管理自己的委托,管理员也可以在 流程管理-->工作委托 中管理所有人的委托: 委托 ...
- arcMap 进度条
private void kk() { IProgressDialogFactory progressDialogFactory = new ProgressDialogFactoryClass(); ...
- Android TabHost切换选项卡实现数据实时刷新
手机界面大小有限,使用TabHost可以达到在一个Activity中放入多个容器(界面)的效果.但存在一个问题是,当数据信息在一个容器(界面)中有所改变时,需要在用户切换选项卡到其他容器(界面)的时候 ...
- 浅谈回归(二)——Regression 之历史错误翻译
我很好奇这个问题,于是搜了一下.我发现 Regression 这个词 本意里有"衰退"的意思. 词根词缀: re- 回 , 向后 + -gress- 步 , 级 + -ion 名词 ...