gpt4 book ai didi

mysql - 无法连接到在 AWS 上运行的 MySQL 数据库

转载 作者:行者123 更新时间:2023-11-29 05:22:18 25 4
gpt4 key购买 nike

public static void main (String[] args) { 
String host = "jdbc:mysql://ec2-user@ec2-xx-xxx-xx-xxx.compute-1.amazonaws.com:3306/";
String uname = "root";
String db = "customers";
String password = "somepassword";
String driver = "com.mysql.jdbc.Driver";
int i = 0;
try {
Class.forName(driver).newInstance();
Connection conn = DriverManager.getConnection(host+db, uname, password);

Statement st = conn.createStatement();
i = st.executeUpdate("INSERT INTO users " +
"VALUES ('Simpson1', 'mail@example.com', 'Springfield')");

if(i==1)
System.out.println("Sucessfully Updated table");

conn.close();
} catch (Exception e) {
System.err.println("Got an exception! ");
System.err.println(e.getMessage());
}
}

我正在尝试连接到 AWS 数据库,但在运行上面的程序时出现以下异常和错误:

Got an exception! Communications link failure

The last packet sent successfully to the server was 0 milliseconds
ago. The driver has not received any packets from the server.

我尝试连接的主机名是否有误?

最佳答案

根据数据库的连接字符串和 URL,我看到您正在连接到安装在 EC2 中的数据库。我假设您正在尝试从/通过外部互联网连接到实例。

请检查以下设置

  1. 检查实例使用的安全组中的 TCP 协议(protocol)的 3306 端口是否为实例打开
  2. 您需要在您的 MySQL 中启用远程连接。这是一个数据库实例级别的设置。

确认是否是连接/连接设置问题的最佳试金石是尝试在连接数据库实例的同一个 ec2 实例中运行上述代码。

关于mysql - 无法连接到在 AWS 上运行的 MySQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24217417/

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