Skip to content

START-DB-CONNECTION-FAILED ​

错误编号:START-DB-CONNECTION-FAILED

Java Manifest 尚未导出。当前启动失败看控制台 JDBC 异常,不要把真实 URL 写进文档或 Issue。

适用版本 / 权益 ​

免费。Admin / Report / Flow / App 共用同一类 JDBC 连接问题。

典型报错关键词 ​

  • Communications link failure
  • Connection refused
  • JDBC 连 3306 超时

用户会看到什么 ​

Admin 起不来,堆栈里是连 MySQL 失败,还不是 Access denied 或 Unknown database。

发生原因 ​

主机、端口、网络或 MySQL 进程不可达。认证失败走 START-DB-AUTH-FAILED;库不存在走 START-DB-NOT-FOUND。

配置位置 ​

官方示例在 application-dev.example.yml:

类型位置键期望
YAMLspring.datasource.dynamic.datasource.master.urlJDBC URLjdbc:mysql://<host>:3306/<db>?...
YAMLspring.datasource.dynamic.primary默认数据源示例为 master
YAMLconfig.datasource.url配置中心库与 master URL 同一套占位

不要把 application-dev.yml 里的真实主机和密码抄进文档。

正确配置 ​

示例形态(占位符):

yaml
spring:
  datasource:
    dynamic:
      primary: master
      datasource:
        master:
          driverClassName: com.mysql.cj.jdbc.Driver
          url: jdbc:mysql://localhost:3306/forge_admin?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8
          username: root
          password: 'your_password'

解决步骤 ​

  1. 确认 MySQL 在跑:mysql --host=<host> --port=3306 -u <user> -p 或 Docker 对应容器。
  2. 核对 URL 里的主机和端口,不是 Redis 6379,也不是 Admin 8580。
  3. 本机防火墙 / 安全组是否放行 3306。
  4. 能连上后再看是不是认证或库名问题,换对应错误页。

验证方法 ​

用同一套 host/port 手工连上 MySQL。再启动 Admin,启动日志不再出现 Communications link failure。

仍未解决时提供的安全信息 ​

  • 本错误编号
  • 主机名是否本机 / 远程(不要贴完整 JDBC URL)
  • MySQL 是否能在本机客户端连通

相关文档 ​