一、背景
主从数据库下,程序有时候订阅oplog以同步至其他的数据存储中间件。
本文是基于mongodb 5.x版本。
二 、查询示例
-
oplog在local数据库的集合oplog.rs中
-
继续上文的示例,我们在testdb集合中保存了一条数据
-
现在来查询其oplog
db.getCollection('oplog.rs').find({"op": "i", "ns":"testdb.testdb"})
.sort({"ts":-1})
// 得到结果
{
"op" : "i",
"ns" : "testdb.testdb",
"ui" : UUID("31285401-27a0-4049-af26-08ee1c30584f"),
"o" : {
"_id" : ObjectId("644b8ec9d0158b0f63859e0c"),
"age" : 1.0
},
"ts" : Timestamp(1682673353, 2),
"t" : NumberLong(1),
"v" : NumberLong(2),
"wall" : ISODate("2023-04-28T09:15:53.924Z")
}
- 这里需要注意,ns中的值是“数据库.集合”的格式
- 在o字段中,我们能够看到详细的插入内容