Flink CDC 与 Phoenix JDBC依赖冲突

1.正确maven依赖添加如下:

        <dependency>
            <groupId>com.alibaba.ververica</groupId>
            <artifactId>flink-connector-mysql-cdc</artifactId>
            <version>1.12.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.phoenix</groupId>
            <artifactId>phoenix-core</artifactId>
            <version>5.0.0-HBase-2.0</version>
        </dependency>

2.使用方式

2.1.Flink CDC监控MySQL binlog日志(注意:这里使用的是com.alibaba.ververica.cdc.connectors.mysql.MySQLSource;)

        DebeziumSourceFunction<String> dbSourceFunction = MySQLSource.<String>builder()
                .hostname("192.168.126.xxx")
                .port(3306)
                .databaseList("realtime")
                .tableList("realtime.table")
                .username("link_name")
                .password("xxxxx")
                .deserializer(new JsonDeserializationSchema())
                .startupOptions(StartupOptions.initial())
                .build();
        DataStreamSource<String> dbConfigStream = env.addSource(dbSourceFunction);
        dbConfigStream.print("db-config-stream: ");

2.2.Phoenix JDBC连接方式

Class.forName("org.apache.phoenix.jdbc.PhoenixDriver");
Connection connection = DriverManager.getConnection("jdbc:phoenix:192.168.126.xxx:2181");
PreparedStatement preparedStatement = connection.prepareStatement("SQL");
preparedStatement.execute();

问题:

当使用以下Flink CDC依赖包时,会导致mysql binlog无法正常监控(没有mysql日志输出)

这里使用的com.ververica组下的cdc依赖,而不是com.alibaba.ververica组的依赖

        <dependency>
            <groupId>com.ververica</groupId>
            <artifactId>flink-connector-mysql-cdc</artifactId>
            <version>1.12.0</version>
        </dependency>

使用com.ververica组下的cdc依赖,导入的包为:com.ververica.cdc.connectors.mysql.MySqlSource;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值