【问题标题】:Unable to access RDS database from EC2 instance webapp无法从 EC2 实例 webapp 访问 RDS 数据库
【发布时间】:2017-08-22 23:40:30
【问题描述】:

首先,我们可以使用以下命令访问 RDS/MySQL 数据库:

mysql -h ckinstance.cx2ecc4osrgp.us-west-2.rds.amazonaws.com -P 3306 -u ck -p<PASSWORD>

然后我们尝试添加 root 用户和密码以通过以下方式提供对 RDS/MySQL 数据库的访问:

create user 'ck'@'ckinstance.cx2ecc4osrgp.us-west-2.rds.amazonaws.com' identified by '<PASSWORD>';
grant all privileges ck.* to 'ck'@'ckinstance.cx2ecc4osrgp.us-west-2.rds.amazonaws.com'; 

我们的 webapp 属性文件有:

com.careerkick.jpa.url=jdbc:mysql://ckinstance.cx2ecc4osrgp.us-west-2.rds.amazonaws.com:3306/ck
com.careerkick.jpa.username=ck
com.careerkick.jpa.password=<password>

但是,当我们运行我们的 webapp 时,日志显示它仍在尝试通过 localhost 访问它:

com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0
com.mchange.v2.resourcepool.BasicResourcePool - 
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@6c3bae8 -- Acquisition 

Attempt Failed!!! Clearing pending acquires. While trying to acquire a needed new 
resource, we failed to succeed more than the maximum number of allowed acquisition
attempts (30). Last acquisition attempt exception: 
java.sql.SQLException: Access denied for user 'ck'@'172.31.29.230' (using password:   YES)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1078)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4187)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4119)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:927)
at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1709)
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1252)

由于某种原因,它似乎想使用本地主机IP。

我也尝试通过使用本地主机 IP 创建用户。

创建由''标识的用户'ck'@'172.31.29.230';

但这也没有用。

我也参考了这篇文章:

java.sql.SQLException: Access denied for user

关于此数据库连接问题,是否还有其他建议或我可能遗漏的其他内容?谢谢。

【问题讨论】:

    标签: amazon-web-services amazon-ec2 amazon-rds


    【解决方案1】:

    当您授予对 RDS 的访问权限时,您授予对您正在连接的主机的访问权限,而不是您正在连接的主机。由于私有 IP 通常在 ec2 内发生变化,因此最好使用安全组来控制访问并使用通配符主机设置授权%

    【讨论】:

    • 感谢您的澄清。我将尝试通配符主机设置。
    猜你喜欢
    • 2017-05-22
    • 1970-01-01
    • 1970-01-01
    • 2021-08-02
    • 1970-01-01
    • 2013-05-26
    • 2019-11-23
    • 2016-08-24
    • 2019-07-25
    相关资源
    最近更新 更多