MySQL изменений в Kafka с использованием Debezium - захват только DDL stmts - PullRequest
0 голосов
/ 29 мая 2020

Настроил MySQL -дебезиум для CD C. Он фиксировал изменения DDL, такие как создание / удаление таблицы, но не фиксировал события DML. Использование MySQL 8.0.11 и Embedded debezium версии 0.8.3.Final.

Никаких дополнительных настроек на сервере MySQL при создании таблицы не производилось.

Конфигурационный компонент создается с кодом ниже

@Bean
public io.debezium.config.Configuration customerConnector() {
        return io.debezium.config.Configuration.create()
            .with(EmbeddedEngine.CONNECTOR_CLASS, "io.debezium.connector.mysql.MySqlConnector")
            .with(EmbeddedEngine.OFFSET_STORAGE, "org.apache.kafka.connect.storage.FileOffsetBackingStore")
            .with(EmbeddedEngine.OFFSET_STORAGE_FILE_FILENAME, "path-to-file")
            .with("offset.flush.interval.ms", 60000)
            .with(EmbeddedEngine.ENGINE_NAME, "customer-mysql-connector")
            .with(MySqlConnectorConfig.SERVER_NAME, databaseServer)
            .with(MySqlConnectorConfig.HOSTNAME, databaseServer)
            .with(MySqlConnectorConfig.PORT, databasePort)
            .with(MySqlConnectorConfig.USER, databaseUser)
            .with(MySqlConnectorConfig.PASSWORD, databasePassword)
            .with(MySqlConnectorConfig.DATABASE_WHITELIST, databaseSchemaName)
            .with(MySqlConnectorConfig.TABLE_WHITELIST, databaseTable)
            .with(MySqlConnectorConfig.DATABASE_HISTORY,
                    MemoryDatabaseHistory.class.getName()).build();
}

Ниже приведен журнал при его запуске как Приложение Springboot

2020-05-29 21:24:28.028  INFO 5576 --- [pool-1-thread-1] i.d.connector.mysql.MySqlConnectorTask   : MySQL has the binlog file 'binlog.000009' required by the connector
2020-05-29 21:24:28.072  INFO 5576 --- [pool-1-thread-1] io.debezium.util.Threads                 : Requested thread factory for connector MySqlConnector, id = localhost named = binlog-client
2020-05-29 21:24:28.074  INFO 5576 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
2020-05-29 21:24:28.074  INFO 5576 --- [pool-1-thread-1] io.debezium.util.Threads                 : Creating thread debezium-mysqlconnector-localhost-binlog-client
2020-05-29 21:24:28.090  INFO 5576 --- [-localhost:3306] io.debezium.util.Threads                 : Creating thread debezium-mysqlconnector-localhost-binlog-client
2020-05-29 21:24:28.121  INFO 5576 --- [-localhost:3306] c.g.shyiko.mysql.binlog.BinaryLogClient  : Connected to localhost:3306 at binlog.000009/3786 (sid:6293, cid:36)
2020-05-29 21:24:28.121  INFO 5576 --- [-localhost:3306] i.debezium.connector.mysql.BinlogReader  : Connected to MySQL binlog at localhost:3306, starting at binlog file 'binlog.000009', pos=3786, skipping 8 events plus 0 rows
2020-05-29 21:24:28.121  INFO 5576 --- [-localhost:3306] io.debezium.util.Threads                 : Creating thread debezium-mysqlconnector-localhost-binlog-client
2020-05-29 21:24:28.183  INFO 5576 --- [           main] d.s.w.p.DocumentationPluginsBootstrapper : Context refreshed
2020-05-29 21:24:28.199  INFO 5576 --- [           main] d.s.w.p.DocumentationPluginsBootstrapper : Found 1 custom documentation plugin(s)
2020-05-29 21:24:28.199  INFO 5576 --- [           main] s.d.s.w.s.ApiListingReferenceScanner     : Scanning for api listing references

Есть подсказка? Спасибо!

1 Ответ

0 голосов
/ 09 июня 2020

table.whitelist должно быть установлено на <schema>.<table>, поэтому в вашем случае source.customer

...