【问题标题】:not able to connect to rds from local machine无法从本地机器连接到 rds
【发布时间】:2019-12-12 02:42:23
【问题描述】:

我正在尝试使用 rds 部署带有 MySQL 引擎的 rds 实例。数据库子网组在公共子网中。

我已执行以下检查: - 允许安全组在端口 3306 上进行公共访问 - Telnet 命令在 3306 端口上的端点 URL 上成功

配置如下:

安全组:

记录详情:

anhs-MBP:mykeys anhtrang$ telnet database-1.c9nddsynmhxo.us-east-2.rds.amazonaws.com 3306
Trying 3.130.77.228...
Connected to ec2-3-130-77-228.us-east-2.compute.amazonaws.com.
Escape character is '^]'.
N
5.7.22-log
*!qV/yIp1Blwamysql_native_password

尝试使用控制台连接到 rds

【问题讨论】:

  • URL 字段中的主机和端口之间有一个空格 (.com :3306)
  • @Paulpro 删除了空间,同样的问题。 Connection to dev-mysql-rds failed. [08001] Could not create connection to database server. Attempted reconnect 3 times. Giving up.
  • 最好不要允许从0.0.0.0/0访问RDS实例。指定 Internet 上需要访问的机器的 IP 地址,或者如果这是动态的,则创建一个 EC2 实例并将该实例的安全组指定为 Source 以允许。此外,尽管您在第一个屏幕截图中隐藏了实例名称,但您忘记为所有其他人这样做。 (虽然如果你把它隐藏起来就很难猜到那里有一个空间????)
  • @Wodin 这仅用于测试和学习,仅用于快速设置。在生产中,它绝对是严重的安全问题和反安全做法
  • @JoeyTrang 我不知道那是什么软件。您是否通过单击“疑难解答”获得更多信息?

标签: amazon-web-services amazon-rds


【解决方案1】:

这是由于InteliJ的MySql驱动插件的问题

我可以使用mysqlsh 命令行工具连接到 rds 实例。

【讨论】:

    【解决方案2】:

    由于 MySQL Server 8.0.11 caching_sha2_password 被用作默认身份验证方法。可能 IntelliJ MySQL 驱动程序不支持这种身份验证方法。 您需要使用一种较旧的身份验证方法创建用户,例如CREATE USER xyz@localhost IDENTIFIED WITH mysql_native_password BY 'passw0rd'.

    更多这里https://dev.mysql.com/doc/refman/8.0/en/create-user.html和这里https://dev.mysql.com/doc/refman/8.0/en/authentication-plugins.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-10-17
      • 2015-04-30
      • 1970-01-01
      • 1970-01-01
      • 2021-05-07
      • 2016-09-09
      • 1970-01-01
      相关资源
      最近更新 更多