简体   繁体   English

不可能从 AWS Lambda 连接到 RDS MySQL

[英]Impossible connect to RDS MySQL from AWS Lambda

I have RDS MySQL database created under one AWS account.我在一个 AWS 账户下创建了 RDS MySQL 数据库。 This DB is opened, i can connect by Workbench or by any other desktop app.此数据库已打开,我可以通过 Workbench 或任何其他桌面应用程序进行连接。

Also i have other AWS account where i'm trying to create Lambda function for to connect to RDS DB from my first account.此外,我还有其他 AWS 帐户,我正在尝试创建 Lambda 函数以从我的第一个帐户连接到 RDS DB。

And looks like it's impossible because i'm every time getting timeout.看起来这是不可能的,因为我每次都超时。

Here is my Lambda Java code:这是我的 Lambda Java 代码:

import com.amazonaws.services.lambda.runtime.Context;
import com.amazonaws.services.lambda.runtime.RequestHandler;

import java.sql.DriverManager;

public class DBTest implements RequestHandler<String, String> {

    @Override
    public String handleRequest(String input, Context context) {
        context.getLogger().log("Input: " + input+"\n");

        try {
            StringBuilder url = new StringBuilder();

            url.append("jdbc:mysql://").
                append("jackdbinstance.********.eu-west-1.rds.amazonaws.com:3306/").
                append("TestLambdaDB"+"?").
                append("user=******&").
                append("password=*******");


            DriverManager.getConnection(url.toString());

            return "DB connected";
        } catch (Exception e) {
            return e.toString();
        }
    }
} 

Using same code i can connect from my desktop java app without any problems.使用相同的代码,我可以毫无问题地从我的桌面 Java 应用程序连接。

I'm not using VPC, i have allocated 512Mb memory for Lambda, timeout set to 30sec(from my view it's enough)我没有使用 VPC,我为 Lambda 分配了 512Mb 内存,超时设置为 30 秒(从我看来已经足够了)

Can somebody help please?有人可以帮忙吗?

问题与 RDS 实例的安全组配置有关,只有一个 IP 申请连接,不知何故,当我创建 RDS 实例时会自动设置此规则。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 AWS Lambda Java,连接到 MySQL RDS - AWS Lambda Java, connect to MySQL RDS 无法从AWS Lambda连接到AWS RDS MySql DB。 ClassNotFoundException:com.mysql.jdbc - Not able to connect to AWS RDS MySql DB from AWS Lambda. ClassNotFoundException: com.mysql.jdbc 如何使用 AWS IAM 身份验证从 Java/Spring 应用程序连接到 AWS RDS MySQL? - How do I connect to AWS RDS MySQL from Java/Spring application using AWS IAM Authentication? 创建 AWS lambda 以将 csv 文件从 S3 复制到 RDS MySQL - Create AWS lambda to copy csv file from S3 to RDS MySQL AWS Lambda in Java 无法使用连接钱包连接到Oracle RDS - AWS Lambda in Java unable to connect to Oracle RDS using connection wallet 从 Java 连接到 AWS RDS 代理 - Connect to AWS RDS Proxy from Java 使用IAM Roles从Lambda连接到RDS MySql正在超时 - Connecting to RDS MySql from Lambda using IAM Roles is timing out 无法从 pgadmin4 连接到 AWS RDS postgres 实例 - unable to connect to AWS RDS postgres instance from pgadmin4 AWS Lambda连接到可公开访问的AWS RDS - AWS Lambda connecting to publicly accessible AWS RDS 在 AWS-EC2 上运行的 SpringBoot 应用程序无法连接到 MySQL AWS-RDS 数据库 - SpringBoot app running on AWS-EC2 unable to connect to MySQL AWS-RDS database
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM