参考:https://blog.csdn.net/ashic/article/details/104722975
canal的github地址:https://github.com/alibaba/canal
canal安装和canal和kafka结合使用:https://blog.csdn.net/weixin_42191498/article/details/129153667
1、需求1,merchantdb库的所有表同步到kafka的subotiz-canal-merchantdb的topic,paymentdb库所有表同步到kafka的subotiz-canal-paymentdb的topic,tradingdb库所有表同步到kafka的subotiz-canal-tradingdb的topic
解决:目前我的canal部署在k8s上,所以配置使用的是configmap,configmap配置如下
apiVersion: v1 data:canal_destinations: canal-merchantdb-dynamiccanal_instance_connectionCharset: UTF-8canal_instance_dbPassword: vGgRTZubA2qsI2mNcanal_instance_dbUsername: canalcanal_instance_filter_regex: (merchantdb|paymentdb|tradingdb)\\..*#canal_instance_filter_regex: merchantdb\\..*canal_instance_filter_black_regex: (mysql|dts|mqbone|oauth2_production|account|act|crab|crawfish|datafountain|email_api_production|exec|fortunecat|kirin|notify_api_production|pangu_db|leopard)\\\\..*,tiger\\\\._order_transactions_new,main\\\\.menus,main\\\\.menu_itemscanal_instance_master_address: pc-rj9y7id894cs4ld05.rwlb.rds.aliyuncs.com:3306#canal_mq_dynamicTopic: merchantdb\\.*:subotiz-canal-merchantdb,paymentdb\\.*:subotiz-canal-paymentdb,tradingdb\\.*:subotiz-canal-tradingdbcanal_mq_dynamicTopic: subotiz-canal-merchantdb:merchantdb,subotiz-canal-paymentdb:paymentdb,subotiz-canal-tradingdb:tradingdbcanal_mq_dynamicTopicPartitionNum: subotiz-canal-merchantdb:3,subotiz-canal-paymentdb:3,subotiz-canal-tradingdb:3#canal_mq_dynamicTopicPartitionNum: subotiz-canal-merchantdb:3canal_mq_flatMessage: "true"canal_mq_maxRequestSize: "52428800"canal_mq_partitionHash: .*\..*:$pk$canal_mq_partitionsNum: "3"canal_mq_servers: alikafka-post-cn-qzm4d4obv002-3-vpc.alikafka.aliyuncs.com:9092canal_mq_topic: subotiz-canal-merchantdb#canal_mq_topic: subotiz-canal-defaultcanal_serverMode: kafkacanal_zkServers: mse-f01be7312-zk.mse.aliyuncs.com:2181kafka_bootstrap_servers: alikafka-post-cn-qzm4d4obv002-3-vpc.alikafka.aliyuncs.com:9092kafka_max_request_size: "92428800" kind: ConfigMap metadata:name: canal-cm-merchantdbnamespace: staging
