You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Liquibase在GitHub Actions及Diff生成时出现连接超时错误求助

解决Liquibase连接MariaDB超时问题

错误信息

Unexpected error running Liquibase: Connection could not be created to jdbc:mariadb://10.13.10.2:3306/liquibase_test with driver org.mariadb.jdbc.Driver. Socket fail to connect to host:address=(host=10.13.10.2)(port=3306)(type=primary). Connect timed out

排查与解决步骤

  • 验证网络连通性
    在运行Liquibase的机器(GitHub Actions runner或你的服务器)上执行以下命令,测试能否访问数据库端口:

    nc -zv 10.13.10.2 3306
    # 或者用telnet
    telnet 10.13.10.2 3306
    

    如果连接失败,说明网络层面存在阻断:

    • 检查数据库服务器的防火墙/安全组,开放3306端口的入站规则,允许runner和服务器的IP访问;
    • 确认中间网络(如VPN、代理)是否正常,是否需要配置路由规则。
  • 检查MariaDB绑定地址
    登录数据库服务器,查看my.cnf(或my.ini)中的bind-address配置:

    # 若配置为127.0.0.1,仅允许本地访问,需修改为0.0.0.0(允许所有IP)或指定允许的IP段
    bind-address = 0.0.0.0
    

    修改后重启MariaDB服务:

    systemctl restart mariadb
    

    同时确认数据库服务正常监听3306端口:

    netstat -tulpn | grep 3306
    
  • 确认数据库用户访问权限
    登录MariaDB,检查连接用户的访问权限范围:

    SELECT user, host FROM mysql.user WHERE user='你的数据库用户名';
    

    如果host字段是localhost或特定IP,而你的runner/服务器不在允许范围内,执行授权语句:

    -- 允许从任意IP访问(生产环境建议限制具体IP)
    GRANT ALL PRIVILEGES ON liquibase_test.* TO '你的用户名'@'%' IDENTIFIED BY '你的密码';
    FLUSH PRIVILEGES;
    
  • 校验Liquibase配置
    确认Liquibase配置文件(如liquibase.properties)中的参数是否正确:

    url: jdbc:mariadb://10.13.10.2:3306/liquibase_test
    driver: org.mariadb.jdbc.Driver
    username: 你的用户名
    password: 你的密码
    

    同时确保已正确引入MariaDB JDBC驱动,比如在Maven依赖中添加:

    <dependency>
        <groupId>org.mariadb.jdbc</groupId>
        <artifactId>mariadb-java-client</artifactId>
        <version>最新稳定版</version>
    </dependency>
    
  • GitHub Actions额外排查

    • 若使用GitHub托管runner:目标数据库必须公网可访问,或通过VPC peering、内网隧道等方式打通GitHub runner与内网数据库的连接;
    • 若使用自托管runner:确认runner所在机器能正常访问数据库IP,且已完成上述网络、权限配置。

内容的提问来源于stack exchange,提问作者Dinesh Sai

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 10:25:23