首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MongoDB :如何从生成oplog中排除集合

MongoDB是一种开源的NoSQL数据库,其特点是高性能、灵活的数据模型和可伸缩性。在MongoDB中,oplog是一个记录MongoDB实例操作的特殊集合,用于支持数据复制和故障恢复。

要从生成oplog中排除集合,可以通过配置MongoDB的副本集来实现。以下是一种常用的方法:

  1. 首先,确保你的MongoDB实例已经启用了副本集模式。可以通过在配置文件中设置replication.modemaster来启用副本集。
  2. 连接到MongoDB实例并进入管理员身份。
  3. 使用rs.initiate()命令初始化副本集。
  4. 使用rs.conf()命令查看副本集的配置信息。
  5. 使用rs.add()命令添加其他MongoDB实例作为副本集的成员。
  6. 使用rs.slaveOk()命令允许查询从节点。
  7. 使用db.runCommand({configureFailPoint: 'rsSyncApplyStop', mode: 'off'})命令关闭同步应用失败点。
  8. 运行以下命令来排除集合:db.runCommand({excludeCollections: "<collection_name>"}),其中<collection_name>是要排除的集合名称。
  9. 使用db.runCommand({configureFailPoint: 'rsSyncApplyStop', mode: 'alwaysOn'})命令打开同步应用失败点。

通过以上步骤,你就可以从生成oplog中排除指定的集合。

MongoDB的优势是具有高性能和可伸缩性,适用于大规模数据存储和处理。它可以用于各种应用场景,包括Web应用程序、日志管理、用户行为分析等。腾讯云提供了MongoDB的托管服务,称为TencentDB for MongoDB,你可以通过以下链接了解更多信息:TencentDB for MongoDB

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

MongoDB 备份与恢复

--excludeCollection= 排除 mongodump 输出中指定的集合。如需排除多个集合,请多次指定 --excludeCollection。...您可以将从 mongodump 生成的 BSON 文件恢复到与源部署运行相同或更新版本的 MongoDB 部署系统命令行运行 mongorestore,而非 mongo shell。....*" 、 "dept*.bar" )恢复中排除匹配的命名空间。 在该模式,您可以使用星号*作为通配符。 有关通配符模式的示例,请参阅使用通配符恢复集合。...--drop 转储的备份恢复集合之前,请目标数据库删除集合。 --drop不会删除不在备份集合。...与 --verbose 一起使用可生成更详细的摘要信息。 --oplogReplay 恢复数据库转储后, oplog 文件重放 oplog.bson 条目。

7910

基于Go的MongoDB实时同步工具及 Docker 化实践

Magisync 同步原理 简单来说,Magisync一直监听MongoDB的日志集合oplog ,如果源数据库有新的操作产生,oplog集合中会生成有新的记录,这时,Magisync会立刻拿到oplog...Magisync同步的核心就是oplogOplog OplogMongoDB的复制集存储写操作的一个日志,它的存储位置是在local库的oplog.rs表。...这张表是Capped Collection类型,是MongoDB特有的一种类型,可以用类似于Unix的tail -f命令来获取oplog。...580c333e7afa56085f89a00d"), "name" : "mike", "age" : NumberInt(20) } } Magisync 特性说明 1、Magisync如果重启,如何知道该哪个时间点同步...等到Magisync重启时,则会读取oplogMonitor中最小的ts ,然后去源数据库拉取oplog。 2、Magisync用多协程去执行oplog如何保证oplog执行不会错序?

1.7K40

MongoDB的备份与恢复

即对一个数据集合,使用oplog记录的操作重放时,无论被重放多少次,其结果会是一样的。   举例来说,如果oplog记录的是一个插入操作,并不会因为你重放了两次,数据库中就得到两条相同的记录。...因为整个实例的变更操作都会集中在local库oplog.rs集合。...根据上面所说,dump开始的时间系统将记录所有的oplogoplog.bson,所以我们得到这些文件: [mongod@MongoDB ~]$ ll /home/mongod/backup/oplog...1.3.4 别处而来的oplog oplog有两种来源: 1、mongodump时加上--oplog选项,自动生成oplog,这种方式的oplog直接 --oplogReplay 就可以恢复...既然oplog一直都在oplog.rs存在,我们为什么还需要在mongodump时指定--oplog呢?需要的时候oplog.rs拿不就完了吗?

4.5K60

Mongodb mongoshake 数据同步方案与搭建一个简单的测试环境,与不同版本数据同步问题

组件,mongoshake是阿里云NOSQL团队TEAM 开发的一款针对与通用性服务平台的产品,通过对mongodboplog进行读取将源于目的的MOGNODB 数据库之间进行数据同步的方式。...基于数据同步,源端可以是单体的MONGODB ,也可以是复制集合,也可以是分片集合,在使用集合的状态下,可以通过在从库获取OPLOG的方式,降低与主库的FETCH操作带来的对主库的性能影响。...下方的就是在源端存储信息的表 3 可以通过配置白名单和黑名单的方式将某些数据库或collection 集合排除或加入到复制的列表 4 DDL 操作同步,目前的最新版本的mongoshake是...3台虚拟机, 1 安装mongodb 3.4.24 2 安装mongodb 4.2 3 安装mongoshake 2.6.6 2台测试机需要注意,是单机,但需要打开oplogs 所以在生成单机的步骤后...3.4 的之前的 system.indexes 在mongodb 4.2 已经清除了,导致创建索引在 mongodb 4.2 上DDL 命令操作失败。

1.4K30

MongoDB Change Stream初体验

Change Stream 的原理 我们先来回顾一下MongoDB复制集大致是如何工作的: 应用通过驱动向数据库发起写入请求; 在同一个事务MongoDB完成oplog集合的修改; oplog被其他节点拉走...; 节点应用得到的oplog,同样在一个事务完成对oplog集合的修改; 至此,复制集同步完成。...如何断点恢复 现实世界,没有哪个应用是可以不间断运行的。不考虑bug导致的问题,正常的应用升级也会导致应用中断运行。那么在应用恢复的时候,哪里开始继续获取变更呢?...如何有效地处理订阅 假设在一个应用需要订阅10个不同集合的变更情况,是否需要开10个tailable cursor去获取oplog的变更呢?如果是100个集合呢?出于效率考虑显然不应该这么做。...如何数据回滚 极端情况下,如果应用处理不当,MongoDB可能发生数据回滚rollback的问题。如果仅仅通过跟踪oplog,则会出现已经通知出去的变更被回滚的情况。

93640

听说MongoDB你很豪横?-------------MongoDB复制集以及管理优化

备份当前节点的所有oplog记录 (4)删除原来的oplog (5)重新开启集群功能 (6)验证 5、部署认证复制 1、创建登录root用户密码 (2)生成4个实例的密钥文件: (3)4个实例依次重启...60秒,等待30秒使主节点和节点日志同步 三、MongoDB复制集管理优化: 1、优化简介 优化包括:配置节点可以读取数据、查看复制集状态、更改oplog大小、配置带认证的复制集。...(1)复制集的选举原理: 复制是基于操作日志oplog,相当于Mysql的二进制日志,只记录发生改变的记录。复制是将主节点的oplog日志同步并应用到其他节点的过程。...$main集合里面,这个集合是一个固定集合,新操作会自动替换旧的操作,以保证oplog不会超过预设的大小,其中的每个文档都代表主节点上执行的一个操作,oplog会包含所有对数据有修改的的操作(查询操作不会记录...mongo复制的过程:主节点应用业务操作修改到数据库,然后记录这些操作到oplog节点复制这些oplog,然后应用这些修改。ps:这些操作是异步的。

40030

最佳案例分享 | MongoDB读写分离异常案例分析

主要包括如下内容: MongoDB集群架构以及读写策略 应用批处理异常时应用与数据库表现 数据库问题分析 如何规避与解决这个问题 MongoDB集群架构以及读写分离策略 【集群架构】 MongoDB集群是基于...【异常节点】 【正常节点】 【数据库问题分析】 ☐ 主从为什么会延迟 根据官方解释主要包括如下: 网络延迟--同一套环境,环境环境相同,其他节点都没有这个问题,应该可以排除网络延迟问题 磁盘--监控来...,磁盘IOPS在40000-60000之间,所有机器性能差不多,没有特别大的异常,包括cpu都是相对稳定 并发--监控来,17点到17.30出现连接翻倍的情况,这个可能会影响备库拉取oplog性能 写关注...--应用采用默认策略,写入主库ack即可,所以这个不存在问题 备注:因为集群分片集合都是基hashed,数据很均衡,没有出现分片节点数据差别很大的情况,所以目前主从延迟根因很难判断,主从延迟只是双11当天出现过...4.4版本主动推动oplog。相对库主动拉取能够提高效率。

1.9K20

MongoDB 读写分离异常案例分析

主要包括如下内容: MongoDB集群架构以及读写策略 应用批处理异常时应用与数据库表现 数据库问题分析 如何规避与解决这个问题 MongoDB集群架构以及读写分离策略 [集群架构] MongoDB集群是基于...【异常节点】 【正常节点】 【数据库问题分析】 主从延迟原因 根据官方解释主要包括如下: 网络延迟--同一套环境,环境环境相同,其他节点都没有这个问题,应该可以排除网络延迟问题 磁盘--监控来,...磁盘IOPS在40000-60000之间,所有机器性能差不多,没有特别大的异常,包括cpu都是相对稳定 并发--监控来,17点到17.30出现连接翻倍的情况,这个可能会影响备库拉取oplog性能 写关注...备库拉取oplog失败 4.4版本之前都是备库主动去同步源获取日志,如果主库忙、网络出现问题,会导致拉取失败的,从而导致库不能及时应用日志,如果开始级联复制(默认开启),那么此时备库可能从其他备库拉取日志...4.4版本采用stream replication,主动推动oplog。相对库主动拉取能够提高效率,降低复制延迟。

58510

解析OpLog订阅MongoDB的数据变更就这么简单

binlog数据订阅分发项目:https://gitee.com/kekingcn/ke... oplog简介 先来聊聊MongoDB的主备机制,和mysql的binlog类似,在MongoDB,有一个系统库...“”Local”,库里有一个集合oplog.rs”,这个集合类似于binlog文件,里面记录了MongoDB的所有操作。...节点通过读取oplog.rs里的数据做到数据同步。 解析oplog 和订阅mysql的binlog一样(模拟一个节点mysql)。我们的订阅服务要像节点那样读取解析oplog.rs里的数据。...解析前先看下oplog.rs的Document的数据结构 上图是一个插入的数据的日志,可见oplog的doc中共有如下字段,含义分别如下: ts:操作的时间戳(非常重要) t:term最初在主数据库上生成操作的...、o、o2、$set即可,其中ts非常重要,可以类比为binlog的Position。

34520

MongoDB 读写分离异常案例分析

主要包括如下内容: MongoDB集群架构以及读写分离策略 应用批处理异常时应用与数据库表现 数据库问题分析 如何规避与解决这个问题 MongoDB集群架构以及读写分离策略 【集群架构】 MongoDB...【异常节点】 【正常节点】 数据库问题分析 【主从延迟原因】 根据官方解释主要包括如下: 网络延迟--同一套环境,环境环境相同,其他节点都没有这个问题,应该可以排除网络延迟问题 磁盘--监控来...,磁盘IOPS在40000-60000之间,所有机器性能差不多,没有特别大的异常,包括cpu都是相对稳定 并发--监控来,17点到17.30出现连接翻倍的情况,这个可能会影响备库拉取oplog性能 写关注...【备库拉取oplog失败】 4.4版本之前都是备库主动去同步源获取日志,如果主库忙、网络出现问题,会导致拉取失败的,从而导致库不能及时应用日志,如果开始级联复制(默认开启),那么此时备库可能从其他备库拉取日志...4.4版本采用stream replication,主动推动oplog。相对库主动拉取能够提高效率,降低复制延迟。

1.1K20

MongoDB的备份与恢复

即对一个数据集合,使用oplog记录的操作重放时,无论被重放多少次,其结果会是一样的。   举例来说,如果oplog记录的是一个插入操作,并不会因为你重放了两次,数据库中就得到两条相同的记录。...因为整个实例的变更操作都会集中在local库oplog.rs集合。...根据上面所说,dump开始的时间系统将记录所有的oplogoplog.bson,所以我们得到这些文件: [mongod@MongoDB ~]$ ll /home/mongod/backup/oplog...1.3.4 别处而来的oplog oplog有两种来源: 1、mongodump时加上--oplog选项,自动生成oplog,这种方式的oplog直接 --oplogReplay 就可以恢复...既然oplog一直都在oplog.rs存在,我们为什么还需要在mongodump时指定--oplog呢?需要的时候oplog.rs拿不就完了吗?

3K40

MongoDB 的 journal 和 oplog

Primary(或其他 Secondary )拉取 oplog 并重放,来确保复制集里每个节点存储相同的数据。...oplogMongoDB 里是一个普通的 capped collection,对于存储引擎来说,oplog只是一部分普通的数据而已。...MongoDB 的一次写入 MongoDB 复制集里写入一个文档时,需要修改如下数据 将文档数据写入对应的集合 更新集合的所有索引信息 写入一条oplog用于同步 上面3个修改操作,需要确保要么都成功,...数据布局看,oplog 与 journal 的关系 [数据布局] 谁先写入?? oplog 与 journal 是 MongoDB 里不同层次的概念,放在一起比先后本身是不合理的。...oplogMongoDB 里是一个普通的集合,所以 oplog 的写入与普通集合的写入并无区别。 一次写入,会对应数据、索引,oplog的修改,而这3个修改,会对应一条journal操作日志。

1.4K20
领券