Flinkcdc(一)同步mysql的binlog到doris

目前利用FlinkCDC同步数据的方式有两种:

一种是直接使用sql的方式;

一种使用的是datastream的方式;

现在使用第一种方式来实现,通过在flink的client里面进行sql方式的执行。在flink的bin目录下有一个./bin/sql-client.sh,进入到这里面可以执行sql语句。

假如现在需要从mysql同步数据到doris:

第一步需要把flink-sql-connector-mysql-cdc-2.3.0.jar和flink-doris-connector-1.16-1.3.0.jar这两个jar包放到flink/lib目录下,这样的话就可以试用“mysql-cdc”和“doris”,案例如下:

flink利用mysql-cdc从mysql读取binlog日志;

先创建一个源表:

create table source_mysql
(
    id                  bigint,
    age                 int,
    name                STRING,
    sex                 int,
    create_time         timestamp(3),
    PRIMARY KEY (id) NOT ENFORCED
) WITH (
      'connector' = 'mysql-cdc',  //连接器
      'hostname' = 'localhost',   //mysql的ip地址或域名
      'port' = '3306',
      'username' = 'username',
      'password' = 'password',
      'database-name' = 'database',  //库名
      'table-name' = 't_table',      //表名
      'scan.startup.mode' = 'latest-offset'  //latest-offset代表从最新的开始拉取,initial代表读取所有
      );

再创建一个目标表:

create table sink_doris
(
    id                  bigint,
    age                 int,
    name                STRING,
    sex                 int,
    create_time         timestamp(3)
) WITH (
      'connector' = 'doris',
      'fenodes' = 'ip:port',
      'table.identifier' = '数据库.表',
      'username' = '账号',
      'password' = '密码',
      );

最后通过insert into......select...把两个表连接起来:

insert into sink_doris select id,name,age,sex,create_time from source_mysql;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值