簡體   English   中英

如果所有源數據庫中的主鍵相同,我們可以為多個源數據庫制作單個 JDBC 接收器連接器嗎?

[英]Can we make Single JDBC Sink Connector for multiple source db if primary key is same in all source DB?

下面是我的 JDBC 接收器連接器配置屬性。

    "connector.class": "io.confluent.connect.jdbc.JdbcSinkConnector",
    "transforms.dropPrefix.replacement": "$1",
    "table.name.format": "kafka_${topic}",
    "connection.password": "********",
    "tasks.max": "3",
    "topics": "aiq.db1.Test1,aiq.db1.Test2,aiq.db2.Topic1,aiq.db2.Topic2",
    "batch.size": "3000",
    "transforms": "dropPrefix",
    "transforms.dropPrefix.regex": "aiq.(.*)",
    "transforms.dropPrefix.type": "org.apache.kafka.connect.transforms.RegexRouter",
    "value.converter.schema.registry.url": "http://localhost:8081",
    "value.converter.value.subject.name.strategy": "io.confluent.kafka.serializers.subject.RecordNameStrategy",
    "auto.evolve": "true",
    "connection.user": "admin",
    "name": "MSSQL_jdbc_sink_connect",
    "errors.tolerance": "all",
    "auto.create": "true",
    "value.converter": "io.confluent.connect.avro.AvroConverter",
    "connection.url": "jdbc:sqlserver://mssql",
    "insert.mode": "upsert",
    "key.converter": "io.confluent.connect.avro.AvroConverter",
    "key.converter.schema.registry.url": "http://localhost:8081",
    "pk.mode": "record_value",
    "pk.fields": "id"

如果我使用它,則連接器正在尋找 db1 或 db2,這是源 db 並給出此錯誤。

com.microsoft.sqlserver.jdbc.SQLServerException: Database 'db2' does not exist. Make sure that the name is entered correctly.

at io.confluent.connect.jdbc.sink.JdbcSinkTask.getAllMessagesException(JdbcSinkTask.java:150)
at io.confluent.connect.jdbc.sink.JdbcSinkTask.put(JdbcSinkTask.java:102)
... 11 more
[2022-01-25 06:09:09,582] WARN Write of 500 records failed, remainingRetries=10 (io.confluent.connect.jdbc.sink.JdbcSinkTask:92)
com.microsoft.sqlserver.jdbc.SQLServerException: Database 'db2' does not exist. Make sure that the name is entered correctly.

請讓我知道我可以創建一個 JDBC 接收器連接器,它使用多個數據庫作為源主題。 如果這種情況是可能的,那么如何使用 JDBC 接收器連接器來實現這一點?

AFAIK, connection.url一次只能引用一個數據庫,對於該數據庫的經過身份驗證的用戶。

如果您需要將不同的主題寫入不同的數據庫,請復制您的連接器配置,並更改相應的配置

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM