linuxsir首页 LinuxSir.Org | Linux、BSD、Solaris、Unix | 开源传万世,因有我参与欢迎您!
网站首页 | 设为首页 | 加入收藏
您所在的位置:主页 > Linux数据库 >

MongoDB 备份与还原 mongodump、mongorestore

时间:2019-06-11  来源:未知  作者:admin666
mongodump 系统快照(这里不做详细介绍,具体内容见官网:Back Up with Filesystem Snapshots) cp 或者 rsync 1、mongodump

?mongodump 是 MongoDB 官方提供的备份工具,它可以从 MongoDB 数据库读取数据,并生成 BSON 文件,mongodump 适合用于备份和恢复数据量较小的 MongoDB 数据库,不适用于大数据量备份。

? 默认情况下 mongodump 不获取 local 数据库里面的内容。

? mongodump 仅备份数据库中的文档,不备份索引,所以我们还原后,需要重新生成索引。

? mongodump 备份过程中会对 mongod 服务的性能产生影响,我们建议在业务低峰期进行操作。如果我们备份的数据,大于系统内存,我们备份的时候容易出现错误。

在执行 mongodump 的时候,mongod 服务还是可以提供服务的,可以进行修改数据,如果我们在备份的时候加上参数 --oplog 的话,那么 oplog 是会记录这一次操作的,如果我们想在 restore 的时候也有日志记录,我们可以使用 mongorestore --oplogReplay 进行恢复

1.1、mongodump常用命令和参数

官方文档:mongodump

mongodump 默认输出的目录名为 dump ,如果输出路径包含 dump 目录,会直接覆盖的。 默认备份是没有压缩的。

参数:

--host hostname :port , -h hostname :port # 指定备份的主机ip和端口号,默认值localhost:27017
--port # 指定端口号 默认27017
--username username , -u username # 指定用户名
--password password , -p password # 指定密码
--authenticationDatabase dbname # 指定认证的数据库
--authenticationMechanism name # 指定认证的算法 ,默认值 SCRAM-SHA-1
--db database , -d database # 指定备份的数据库,未指定的话,备份所有的数据库,但不包含local库
--collection collection , -c collection # 指定备份的集合,未指定则备份指定库中的所有集合。
--query json , -q json # 指定 json 作为查询条件。来备份我们过滤后的数据。
--queryFile path # 指定 json 文档路径,以该文档的内容作为查询条件,来备份我们过滤后的数据。
--quit # 通过抑制 MongoDB的复制,连接等活动,来实现备份。
--gzip # 开启压缩,3.2版本后可以使用,输出为文件的话会带有后缀.gz
--out path , -o path # 输出的目录路径
--repir # 修复数据时使用 下面有详细介绍
--oplog # mongodump 会将 mongodump 执行期间的 oplog 日志 输出到文件 oplog.bson,这就意味着从备份开始到备份结束的数据操作我们都可以记录下来。
--archive file # 输出到单个存档文件或者是直接输出。

        
友情链接
  • 适用于Windows 10的Microsoft Edge Dev 76.0.172.0已发布
  • 程序员人脸识别成人视频中的女性引发争议
  • 安装Oracle 11g RAC时报Failed to run “oifcfg” 和 找不到集群
  • Unity Tech正式宣布推出适用于Linux的新Unity编辑器
  • Oracle插入数据时出现 ORA
  • Phoronix Test Suite 8.8.1 发布
  • MySQL中使用group
  • X.Org Server 1.20.5 发布,一些XWayland和GLAMOR修复
  • MySQL中group by 与 order by 一起使用排序问题
  • Fedora 31考虑使用Zstd压缩其RPM包而不是XZ
  • PostgreSQL数据库安装部署
  • Google Chrome 成为互联网的看门人
  • Redis中Scan命令的使用
  • 华为Mate 20 Pro重回Android Q Beta支持名单中
  • TypeScript 3.5 发布,新增Omit 辅助类型
  • Redis集群模式下的redis
  • PyPI宣布2FA用于提高Python包下载安全性
  • MuseScore 3.1 发布,音乐制谱软件
  • openSUSE Leap 42.3 Linux操作系统将于2019年6月30日停止支持
  • Linux新闻 第974页
  • 美国司法部正计划对谷歌进行反垄断调查
  • 超六成Windows 10用户运行着一年前的版本
  • Linux里如何配置本地yum源和外网源
  • MySQL中group by 与 order by 一起使用排序问题
  • yum更换国内源及yum下载rpm包
  • MySQL中使用group_concat遇到的问题及解决
  • Linux 定时任务 Crontab
  • Oracle插入数据时出现 ORA-00001: unique constraint
  • Yii2 的安装及简单使用
  • SpringBoot配置加载顺序
  • git merge的使用
  • 编写shell脚本自动生成开头注释简介
  • JDK动态代理在RPC框架中的应用
  • 将Fedora 29升级到Fedora 30
  • Linux touch命令详述
  • Java实现对图片透明化处理
  • 如何在Ubuntu 18.04,19.04中安装uGet 2.2.2
  • ACL权限设置命令setfacl和getfacl命令
  • Nginx+Tomcat8+Memcached实现负载均衡及session共享
  • Redis集群模式下的redis-py-cluster方式读写测试
  • Linux命令 - facl文件系统的访问控制列表详解
  • 在Linux系统中创建SSH服务器别名
  • Redis中Scan命令的使用
  • Apache Camel XML外部实体注入漏洞(CVE-2019-0188)
  • shell脚本里使用echo输出颜色
  • PostgreSQL数据库安装部署
  • Apache Hadoop远程权限提升漏洞(CVE-2018-8029)
  • Google Chrome成为互联网的看门人
  • 欧洲杯直播频道
  • 彩票平台
  • 澳门银河国际网站
  • 28评测网
  • 新利棋牌
  • 中国娱乐场