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

Docker GitLab Runner通过Flyway连接AWS Postgres RDS失败求助

解决方案:移除JDBC URL中的换行符

仔细看你的报错信息:

ERROR: Unable to obtain connection from database (jdbc:postgresql://datacatalog-rds-stage.redacted.us-west-2.rds.amazonaws.com:5432/datacatalog
) for user 'dos': FATAL: database "datacatalog
" does not exist

关键问题在于数据库名datacatalog后面跟着一个换行符,导致Postgres尝试连接的数据库实际是datacatalog\n(带换行符),而你的RDS实例里并没有这个数据库。

下一步操作:

  • 检查GitLab CI/CD配置中Flyway使用的JDBC URL定义位置(比如CI变量、脚本文件等),确保URL末尾的datacatalog后面没有意外的换行或空格。
  • 在CI任务中添加调试步骤打印URL,比如:
    echo "FLYWAY_URL: $FLYWAY_URL"
    
    确认输出的URL是完整的一行,datacatalog后面没有尾随换行。
  • 修改URL移除换行符后重新运行Flyway任务。

既然本地Docker容器用相同凭证和URL能正常连接,说明凭证、安全组、数据库本身都没问题,问题就出在GitLab Runner环境中URL的格式错误上。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 01:25:22