Canal 同步表级DDL 表过滤 正则
基于 日志增量订阅&消费 的业务:
- 数据库镜像
- 数据库实时备份
- 多级索引 (卖家和买家各自分库索引)
- search build
- 业务cache刷新
- 价格变化等重要业务消息
vim /opt/module/canal/deployer/conf/canal.properties
# table regex 设置白名单,如果在 instance.properties 配置文件中进行该项配置, # 则在代码中不应该再配置 connector.subscribe(".*\\..*");, # 如果还在代码中配置,则 配置文件 将会失效! # canal.instance.filter.regex = .*\\..* canal.instance.filter.regex = FlinkEtl.employee # table black regex 设置黑名单 # canal.instance.filter.black.regex = mysql\\.slave_.* canal.instance.filter.black.regex = mysql\\.slave_.*,FlinkEtl.salary # mysql 数据解析关注的表,Perl正则表达式. # 多个正则之间以逗号,分隔 # 转义符需要双斜杠(\\) # 注意:此过滤条件只针对 row 模式的数据有效, # mixed、statement 因为不解析sql,所以无法准确提取 tableName 进行过滤 # 例子: # 1. 所有表:.* or .*\\..* # 2. canal schema 下所有表: canal\\..* # 3. canal 下的以 canal 打头的表:canal\\.canal.* # 4. canal schema 下的一张表:canal.test1 # 5. 多个规则组合使用逗号分隔:canal\\..*,mysql.test1,mysql.test2