mongodb的官方文档–mongodbp
https://docs.mongodb.com/manual/reference/configuration-options/
下面实验是在mongodb 4.0版本上的实验
这里是使用示例的方式讲述的,即我要做什么,我该怎么做
通过具体示例解决一个问题(有思路),好举一反三
第一个示例
我要mongodb像mysql的binlog一样记录详细的数据库操作
第一个想到的是mongodb的配置文件中有关于日志记录的配置,结果日志有哪个时间点对哪个db哪个collection进行了增删查改操作,然而没有详细操作,我要看哪个时间点对哪个db哪个collection进行了插入操作(插入什么具体值啊,我要看具体值)
换个思路,看到有篇问答,使用mongodb的oplog来记录详细的增删查改操作
oplog是用mongodb集群使用的,用于主从mongodb的数据一致,类似mysql的主。
想想也有道理,从mongodb要知道主mongodb增删改了哪些数据(具体数据值),才能同步数据,oplog就是主从同步的实现方法
开启oplog,就是开启主从,改配置文件
https://www.jianshu.com/p/0de43bd5f88b
mongod.cfg 配置文件
replication: #注意需要把replication的#注释掉
oplogSizeMB: 1024
replSetName: rs
mongodb3.6 以上版本直接打 rs.initiate() 命令会默认绑定本地mongodb作为节点。
https://docs.mongodb.com/manual/reference/method/rs.initiate/#rs.initiate
3.6以下版本显式传mongodb节点
rs.initiate(
{
_id: "rs", // 与配置文件中定义的 rs 一致
version: 1,
members: [
{ _id: 0, host : "localhost:27017" }
]
}
)
接下来实验