SQL Server离线同步

本文提供SQL Server离线同步场景的实施思路、配置示例和验证方式,可作为实际项目配置参考。

实现在SQL Server(2017)中结果表向目标表中离线同步数据

案例

SQL Server中将t_source中的数据离线同步到t_target中

解决方案

创建Flink SQL作业类型,添加以下依赖

20250120154153

CREATE TABLE from_table
(
    username STRING,
    age      INT
) WITH (
      'connector' = 'jdbc',
      'url' = 'jdbc:sqlserver://127.0.0.1:3030;database=ispong_db',
      'driver' = 'com.microsoft.sqlserver.jdbc.SQLServerDriver',
      'table-name' = 't_source',
      'username' = 'SA',
      'password' = 'ispong123',
      'scan.fetch-size' = '1'
      );

CREATE TABLE target_table
(
    username STRING,
    age      INT
) WITH (
      'connector' = 'jdbc',
      'url' = 'jdbc:sqlserver://127.0.0.1:3030;database=ispong_db',
      'driver' = 'com.microsoft.sqlserver.jdbc.SQLServerDriver',
      'table-name' = 't_sink',
      'username' = 'SA',
      'password' = 'ispong123',
      'sink.buffer-flush.max-rows' = '1');

INSERT INTO target_table
select *
from from_table;
配置项说明
connector连接方式
url数据库连接url
driver数据源驱动
table-name表名
username数据源账号
password账号密码
scan.fetch-size每次操作多少数据
sink.buffer-flush.max-rows多少条数据合并在一个事务里