mongoplog 常用参数详解
前言:
mongoplog工具的作用就是将mongodb的oplog数据读取出来,然后一条一条的应用到目标库上,可以说是一个库同步工具。业务应用场景就是数据实例的增量迁移。
常用参数:
--from
<host[:port]>
指定同步oplog的源库
--host
<hostname><:port>,
-h
<hostname><:port>
指定同步oplog的目标库
--username
<username>,
-u
<username>
--password
<password>,
-p
<password>
--authenticationDatabase
<dbname>
这三个参数放在一起,主要是指定登录源库和目标库的用户名,密码以及在哪个数据库上校验用户名和密码。--authenticationDatabase 一般是admin.这里有一个需要特别注意的地方就是这个用户名和密码以及验证数据库对源库和目标库必须一样。也就是说 如果源库和目标库的用户名,密码不一样,是无法使用mongooplog的,因此两个库的登录信息必须一样。
--oplogns
<namespace>
指定从源库哪个集合读取oplog,如果没有修改过oplog集合的名称,默认就是
local.oplog.rs,这个参数也就无需指定。
--ssl
指定连接是否通过ssl,如果目标库和源库没有开启ssl连接,就无需指定这个参数,这个参数也是源库和目标库公用的,源库或目标库或者都开启ssl,或者都关闭ssl.
--seconds
<number>,
-s
<number>
这个参数比较重要,意思是将源库距离现在往前推number 秒的这段时间的oplog同步到目标库(如果没有指定这个参数那这个参数的默认值就是
86400秒,也就是24小时).
具体见下图:
假设我们在T2时间点同步完全量的数据,然后到T3时间点这段时间在源库上的增量数据就需要使用mongooplog进行同步
mongooplog --authenticationDatabase admin -u root -p **** --from 192.168.56.160:8635 --host 192.168.56.231:8635 --seconds T3-T2
通过参数
--seconds T3-T2就把T2到T3之间的增量数据通过了过来。
mongooplog是可以反复调用的,假设我们T4才真正把业务数据库从源库同步到目标库,那么我们可以再次调用mongooplog将T4-T3这段时间的增量数据同步到目标库
mongooplog --authenticationDatabase admin -u backupuser -p **** --from 192.168.56.160:8635 --host 192.168.56.231:8635 --seconds T4-T3
- 点赞
- 收藏
- 关注作者
评论(0)