栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 前沿技术 > 大数据 > 大数据系统

kafka+debezium,Error: Couldn‘t obtain database name

大数据系统 更新时间:发布时间: 百科书网 趣学号

我搭建了一个kafka集群,kafka+debezium增量抽取sql server,创建链接报错:

{"error_code":400,"message":"Connector configuration is invalid and contains the following 1 error(s):nUnable to connect. Check this and other connection properties. Error: Couldn't obtain database namenYou can also find the above list of errors at the endpoint `/connector-plugins/{connectorType}/config/validate`"}

配置如下:

curl -i -X POST -H "Accept:application/json" -H "Content-Type:application/json" 192.168.10.137:8083/connectors/ -d
'{
    "name": "sqlserver-connector-test",
    "config": {
        "connector.class": "io.debezium.connector.sqlserver.SqlServerConnector",
        "database.hostname": "121.***",
        "database.port": "***",
        "database.user": "yun***",
        "database.password": "***",
        "database.dbname": "***",
        "database.server.name": "sqlserver-test",
        "table.include.list": "dbo.cdc_test",
        "snapshot.mode": "schema_only",
        "decimal.handling.mode": "String",
        "database.server.timezone": "UTC",
        "database.history.kafka.bootstrap.servers": "192.168.10.137:9092",
        "database.history.kafka.topic": "dbhistory.sqlserver-test"
        }
}'

先看日志:

[2021-09-28 18:58:57,428] INFO Connection gracefully closed (io.debezium.jdbc.JdbcConnection:951)
[2021-09-28 18:58:57,432] INFO AbstractConfig values:
 (org.apache.kafka.common.config.AbstractConfig:372)

就两句话,没啥有用信息...然后翻遍内外网社区,依然没啥有用信息!

好吧,那看看源码:

public String retrieveRealDatabaseName(String databaseName) {
        try {
            return prepareQueryAndMap(GET_DATAbase_NAME,
                    ps -> ps.setString(1, databaseName),
                    singleResultMapper(rs -> rs.getString(1), "Could not retrieve exactly one database name"));
        }
        catch (SQLException e) {
            throw new RuntimeException("Couldn't obtain database name", e);
        }
    }

我的水平只能看出错误类型是SQLException...

于是我在本地搭了相同版本的sql server数据库,配置相同用户,成功连接!

所以问题一定在本地到华为云这个环节!

于是,我查看了所有kafka节点的公网ip,发现其中一台机器公网ip不对!

问题解决,特此记录!

泪目!

转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/279881.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号