使用Debezuim同步mysql binlog

89 阅读1分钟

前提条件

  • 已安装kafka
  • Mysql开启binlog

kafka配置

下载Kafka源码并解压,进入config目录修改以下两个文件

# 集群模式  
connect-distributed.properties  
# 单体模式  
connect-standalone.properties  
  
# 配置  
bootstrap.servers=localhost:9092  
# debezuim插件包(jar)文件夹路径,注意windows下需要注意目录分割符("/"),可能会导致读取不到插件  
plugin.path=D:/mydata/kafka_2.13-3.4.0/plugin

Debezuim配置

connect-standlone.bat D:\mydata\kafka_2.13-3.4.0\config\connect-standalone.properties

验证

  • 查看所有的connectors
get http://localhost:8083/connectors
  • 查看所有的插件
get http://localhost:8083/connector-plugins

配置连接器

post http://localhost:8083/connectors

{  
    "name""test5",  
    "config": {  
        "connector.class""io.debezium.connector.mysql.MySqlConnector",  
        "database.hostname""localhost",  
        "database.port""3306",  
        "database.user""root",  
        "database.password""root",  
        "tombstones.on.delete""false",  
        "database.server.id""1",  
        "database.server.name""demo1",  
        "topic.prefix""test",  
        "schema.history.internal.kafka.topic""mysql_master_history",  
        "schema.history.internal.kafka.bootstrap.servers""localhost:9092",  
        "table.include.list""tian_test.a",  
        "database.include.list""tian_test",  
        "include.schema.changes""true",  
        "database.serverTimezone""Asia/Shanghai",  
        "database.driver""com.mysql.jdbc.Driver",  
        "database.history.kafka.recovery.poll.interval.ms""3000",  
        "defaultFetchSize""1000",  
        "database.tinyInt1isBit""false",  
        "snapshot.locking.mode""none",  
        "decimal.handling.mode""string"  
    }  
}

查看连接器配置

get http://localhost:8083/connectors/{connector-name}/config

查看连接器状态

get http://localhost:8083/connectors/{connector-name}/status