无法从本地 java 应用程序连接到 aurora 数据库

问题描述 投票:0回答:1

我目前正在使用 org.mariadb.jdbc:mariadb-java-client:2.7.9 连接到我的 aurora 数据库集群。我现在需要更新此依赖项,但由于 mariadb 从版本 3.x 中删除了对 aurora 数据库的支持,我想我必须改用 AWS JDBC 驱动程序。所以我按照 github 指南来使用该驱动程序,但要么文档真的很糟糕,要么我太愚蠢而无法正确使用它。我添加了依赖项

software.amazon.jdbc:aws-advanced-jdbc-wrapper
,将驱动程序从
org.mariadb.jdbc.Driver
更新为
software.amazon.jdbc.Driver
,并将 jdbc url 从
jdbc:mysql:aurora//my-cluster.aws.cloud:3306/databaseName
更改为
jdbc:aws-wrapper:mysql//my-cluster.aws.cloud:3306/databaseName
。通过该配置,我得到错误
No database found to handle jdbc:aws-wrapper:mysql//my-cluster.aws.cloud:3306
,这实际上是由flyway抛出的。所以我猜要么缺少依赖项,要么我的配置错误。有人可以帮忙吗?

amazon-web-services amazon-aurora
1个回答
0
投票

好吧,我想我找到了答案。因此flyway检查jdbc字符串并寻找正确的flyway插件来处理数据库迁移。由于没有针对以

jdbc:aws-wrapper
开头的 jdbc 字符串的插件,flyway 崩溃了。这基本上意味着您不能将 aws jdbc 包装器与 Flyway 一起使用。

但即使在 DBeaver 这样的工具中,aws jdbc 包装器也不能与 mariadb 驱动程序一起使用。因此,我现在使用 mysql 驱动程序

com.mysql:mysql-connector-j
,它与 aws jdbc 包装器一起工作,甚至可以在不使用 aws jdbc 驱动程序的情况下独立工作。由于我想使用flyway,因此无法使用aws jdbc驱动程序,因此我现在仅使用mysql驱动程序连接到aurora数据库。

© www.soinside.com 2019 - 2024. All rights reserved.