Максвелл и Дебизий: невозможно скопировать таблицы из схемы mysql, содержащей "." Например: `ab c .xyz`.table_name - PullRequest
0 голосов
/ 21 февраля 2020

В поисках обходного пути или подхода для обработки сценария в Maxwell или Debezium kafka для включения репликации в таблице mysql, где имя схемы содержит ., мы смогли успешно реплицировать таблицы из других схем, подозревающих, что . вызывая проблему

1 Ответ

0 голосов
/ 21 февраля 2020

Согласно документации ,

Начиная с Debezium 0.3, соединитель Debezium MySQL гарантирует, что все имена схем Kafka Connect являются действительными именами схем Avro. Это означает, что логическое имя сервера должно начинаться с латинских букв или подчеркивания (например, [az, AZ, _]), а оставшиеся символы в имени логического сервера и все символы в базе данных и именах таблиц должны быть Латинские буквы, цифры или знак подчеркивания (например, [az, AZ, 0-9, _]). В противном случае все недопустимые символы будут автоматически заменены символом подчеркивания .

. Это может привести к неожиданным конфликтам в именах схем, когда логическое имя сервера, имена базы данных и имена таблиц содержат другие символы, и единственные отличительные символы между полными именами таблиц недопустимы и поэтому заменяются символами подчеркивания

Поэтому, если ваша схема имеет имя abc.xyz и вы хотите скопировать таблицу w

table.whitelist= abc.xyz.w

Дебезиум попытается прочитать таблицу abc.xyz_w

...