开发者社区> 问答> 正文

指定binlog起始位置

我现在想要启动canal后,把现有的binlog全部读取,所以我需要指定binlog的位置,但是因为权限问题,我无法使用show binary logs语句,请问有没有什么办法,来使canal自动从第一个binlog文件开始dump呢?

原提问者GitHub用户whyliyu

展开
收起
绿子直子 2023-05-09 15:07:55 100 0
1 条回答
写回答
取消 提交回答
  • 说下使用过的姿势

    从第一个开始需要保留所有的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

    2023-05-10 10:27:59
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
PolarDB-X 2.0 全局 Binlog 与备份恢复能 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载