org.postgresql.util.PSQLException:致命:AWS Java lambda中的数据库“ <<数据库名称>>”不存在

时间:2019-10-09 21:05:54

标签: java postgresql amazon-web-services aws-lambda amazon-rds

我正面临错误, org.postgresql.util.PSQLException:致命:数据库“”不存在

Java代码部署在AWS lambda中,以连接运行在RDS中的postgres数据库。

代码

String jdbcUrl = "jdbc:postgresql://database-1.cfgz85wxhk0z.eu-west-1.rds.amazonaws.com:5432/postgres";

Connection connection = null;
try {
    connection = DriverManager.getConnection(jdbcUrl, "database_name", "Password");
    Statement st = connection.createStatement();
    st.execute("select * from <schema>.employee;");
} catch (SQLException e) {
    e.printStackTrace();
} catch(Exception e) {
    e.printStackTrace();
}

3 个答案:

答案 0 :(得分:2)

听起来很奇怪,这表明该数据库集群中没有名为postgres的数据库。

用现有数据库替换JDBC URL的最后一部分。

答案 1 :(得分:1)

您应检查Lambda函数是否已配置为连接到RDS实例的同一VPC。否则,他们将无法通信。

official documentation提供了更多详细信息以及一些教程/示例。您也可以在AWS Lambda控制台中(在页面底部附近的“网络”下的“配置”窗格中)手动配置它。 最后,AWS在how do I connect a Lambda function to a dedicated VPC?

上有一个知识库条目

答案 2 :(得分:0)