我现在想要启动canal后,把现有的binlog全部读取,所以我需要指定binlog的位置,但是因为权限问题,我无法使用show binary logs语句,请问有没有什么办法,来使canal自动从第一个binlog文件开始dump呢?
原提问者GitHub用户whyliyu
说下使用过的姿势
从第一个开始需要保留所有的binlog文件 这个不现实吧。。。
用过的方案: 1,无更新的时段(比如凌晨3-4点)直接全量导入+自动获取位点就好了。 2,有数据更新的时段: 2.1 现在一般是小表直接mysqldump(mydumper+myloader) + 指定位点增量 2.2 xbackup +指定位点增量,可以指定表或者db进行部份恢复,不过这玩意有点坑是,指定某些表恢复也不简单,貌似db级别恢复是需要db server的datadir必须为空 2.3 3-4点直接etl工具抽全量+自动获取位点
3,最近发现了debezium,这个支持全量增量直接导入kafka,正在研究
关于权限,权限这玩意找dba,运维开吧。。大不了完了在收回去呗。。或者要什么(一般是位点,全量导出导入) 让dba操作,提供
拉取binlog 都是要开启权限的,这个是必须的,参考文档:
GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON . TO 'canal'@'%';
原回答者GitHub用户agapple
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。