gpt4 book ai didi

mysql - 使用 Node 连接到 Aurora MySQL Serverless

转载 作者:行者123 更新时间:2023-11-29 07:28:13 25 4
gpt4 key购买 nike

我正在尝试使用 mysql 模块连接到我的 Aurora Serverless MySQL 数据库集群,但我的连接总是超时。

const mysql = require('mysql');

//create connection
const db = mysql.createConnection({

host : 'database endpoint',
user : 'root',
password : 'pass',
database : 'testdb'

});


//connect
db.connect((err) => {
if(err){
throw err;
console.log('connection failed');
}
console.log('mysql connected...');
})
db.end();

我的集群没有公共(public) IP 地址,所以我正在尝试使用端点。我已经使用 Cloud9 成功连接到数据库,但无法使用节点连接。我一定是遗漏了什么。

最佳答案

Aurora Serverless 使用内部 AWS 网络设置,目前仅支持来自 VPC 内部的连接,并且它必须与部署无服务器集群的 VPC 相同。

Q: How do I connect to an Aurora Serverless DB cluster?

You access an Aurora Serverless DB cluster from within a client application runing in the same Amazon Virtual Private Cloud (VPC). You can't give an Aurora Serverless DB cluster a public IP address.

https://aws.amazon.com/rds/aurora/faqs/#serverless

由于架构上类似的原因,同样的限制也适用于 Amazon EFS。你可以work around EFS 中的限制,同样的解决方法可用于 Aurora Serverless,但您需要完全禁用健康检查,因为这些健康检查连接将使实例始终保持事件状态。最好避免将数据库暴露在 Internet 上。

您还可以使用一些 VPN 解决方案。它们需要基于实例,并且可能需要使用 NAT 来伪装 VPN 实例内部地址后面的客户端地址——这实际上是上面提到的代理解决方法所做的,但在不同的 OSI 层。

关于mysql - 使用 Node 连接到 Aurora MySQL Serverless,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52824948/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com