项目代码读写分离,有多个Mysql主数据源,canal-server是否可以配置多个Mysql主数据源?如果可以,如何配置,谢谢

dffbzjpn  于 2022-12-31  发布在  Mysql
关注(0)|答案(5)|浏览(255)

Question

vybvopom

vybvopom1#

canal-server不用管,配置不同的instance监听不同的数据源就可以了

qnzebej0

qnzebej02#

配置不同的instance指的是canal-server/conf/example/instance.properties文件吗?如果我在example目录下配置instance1.properties,instance2.properties就是监听两个数据源了,是这个意思吗?谢谢

uttx8gqw

uttx8gqw3#

请问下:
canal-adapter的application.yml

srcDataSources:
defaultDS:
url: jdbc:mysql://ip:3306/db?useUnicode=true
username: xxx
password: xxx

设置这个配置的目的是什么呢?
谢谢

hiz5n14c

hiz5n14c4#

你启动一个canal-admin就能理解server和instance的关系了。srcDataSources就是字面上的意思,如果有多个数据源,defaultDS唯一,例如defaultDS、secondDS

iqih9akk

iqih9akk5#

请问下: canal-adapter的application.yml

srcDataSources: defaultDS: url: jdbc:mysql://ip:3306/db?useUnicode=true username: xxx password: xxx

设置这个配置的目的是什么呢? 谢谢

个人理解啊,比如源库中A表为主表,B表为子表,想要把B表同步进es7(es要单独的大文档才能发挥性能,join限制多),一般会设置sql,把A表和B表JOIN,这样才根据A表的信息搜索得到B表的数据,但binlog只能单独监听A表的改动或B表的改动,怎么把A的改动刷到es文档中的A表冗余字段中?就只能去源库搜索B表的关联数据了,所以需要配置源库。adapter配置的sql只是为了解析表的关联结构

相关问题