MongoDB oplog (类似于 MySQL binlog) 记录数据库的所有修改操作,除了用于主备同步;oplog 还能玩出很多花样,比如

* 全量备份 + 增量备份所有的 oplog,就能实现 MongoDB 恢复到任意时间点的功能
* 通过 oplog,除了实现到备节点的同步,也可以额外再往单独的集群同步数据(甚至是异构的数据库),实现容灾、多活等场景,比如阿里云开源的
MongoShake
<https://yq.aliyun.com/go/articleRenderRedirect?url=https%3A%2F%2Fgithub.com%2Falibaba%2FMongoShake>
就能实现基于 oplog 的增量同步。
* MongoDB 3.6+ 版本对 oplog 进行了抽象,提供了 Change Stream
<https://yq.aliyun.com/go/articleRenderRedirect?url=https%3A%2F%2Fdocs.mongodb.com%2Fmanual%2FchangeStreams%2F>
的接口,实际上就是能不断订阅数据库的修改,基于这些修改可以触发一些自定义的事件。
* ......
总的来说,MongoDB 可以通过 oplog 来跟生态对接,来实现数据的同步、迁移、恢复等能力。而在构建这些能力的时候,

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信