Я пытаюсь подключить реплицировать таблицу в режиме реального времени с помощью Kafka connect. Используемая база данных - MySQLv5.7.
При работе с режимами вставки и обновления по отдельности столбцы ведут себя должным образом Однако, когда я использую режим upsert, в базе данных не наблюдается никаких изменений.
Файл конфигурации заполнен через пользовательский интерфейс
Раковина
topic = custom-p2p
Connector Class = JdbcSinkConnector
name = sink
tasks-max = 1
Key-converter-class=org.apache.kafka.connect.storage.StringConverter
Value-converter-class=org.apache.kafka.connect.json.JsonConverter
jdbc_url=jdbc:mysql://127.0.0.1:3306/p2p_service_db4?user=root&password=root&useSSL=false
insert mode = upsert
auto create = true
auto evolve = true
Источник
Connector Class = JdbcSourceConnector
name = source-new
task max = 1
key converter class = org.apache.kafka.connect.storage.StringConverter
value converter class = org.apache.kafka.connect.json.JsonConverter
jdbc url = jdbc:mysql://127.0.0.1:3306/p2p_service_db3?user=root&password=root&useSSL=false
table loading mode = timestamp+incrementing
incrementing column name = auto_id
timestamp column name = last_updated_at
topic prefix = custom-
веры
Проблема, с которой я сталкиваюсь, заключается в том, что когда режим вставки приемника изменяется на вставку, вставка происходит правильно при изменении на обновление, это также происходит идеально, как и ожидалось, однако, когда значение изменяется на upsert, ни вставка, ни обновление не требуют место.
Пожалуйста, дайте мне знать, если что-то сделано не так? Почему этот режим не работает? Есть ли какая-то альтернатива этому, если эти операции вставки и обновления должны быть реплицированы в резервной БД.
Заранее спасибо. Дайте мне знать, если нужна какая-то другая информация