我正在尝试使用 AWS Glue Spark 脚本和 JDBC Glue 连接连接到外部 MariaDB 数据库实例。
Spark 脚本的代码片段是:
dyf = glueContext.create_dynamic_frame.from_options(
connection_type = 'mysql', connection_options =
{
"useConnectionProperties": "true",
"connectionName": "sample_con_name",
"dbtable": "admins",
"customJdbcDriverS3Path": "s3://path_to_connector/mysql-connector-java-8.0.17.jar",
"customJdbcDriverClassName": "com.mysql.cj.jdbc.Driver"
}
)
运行 Glue Spark 作业后遇到的错误是: 调用 o95.getDynamicFrame 时发生错误。通讯链路故障
Glue 连接基于我的 VPC 中的私有子网。私有子网有一条通过我的 VPC 中的 NAT 网关的路由,并且弹性 IP 连接到 NAT 网关 - 该弹性 IP 已被外部数据库管理员列入白名单。
如何解决这个问题?是驱动程序/证书问题吗?
谢谢!
为了测试,我在同一个私有子网上创建了一个 EC2 实例,并编写了一个小的 PHP 脚本来连接到同一个外部数据库,并且连接成功。
这个问题你解决了吗?我认为 Glue 不支持 MariadB 连接