如何从终端连接到AWS mysql数据库实例

时间:2014-04-25 09:43:07

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

我正在使用Ubuntu。我按照此处的说明将应用程序部署到AWS beanstalk:http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_Ruby_sinatra.html

它已启动,可运行且可查看。然而,两个主要问题似乎是一个问题。

  1. 在创建和部署期间,在我的本地终端上,当涉及“创建数据库实例”位时,我选择了“y”。在明显成功部署之后,我做了“eb status”并为我的数据库实例得到了这个(为了安全起见,下面稍作修改):

    RDS数据库:AWSEBRDSDatabase | aa1x1c7p9lu9xxt.cpv9i4mprkez.us-west-1.rds.amazonaws.com:3306

  2. 第一个问题:哪个位是用户,它位于db名称,我假设密码是我在部署过程中输入的密码。

    如何从终端连接到此?我尝试了很多基于以下内容的变体:

    mysql -h aa1x1c7p9lu9xxt.cpv9i4mprkez.us-west-1.rds.amazonaws.com -u root -p aa1x1c7p9lu9uxt
    

    我收到以下错误:

    ERROR 2003 (HY000): Can't connect to MySQL server on 'aa1x1c7p9lu9xxt.cpv9i4mprkez.us-west-1.rds.amazonaws.com' (110)
    

    从终端连接的正确方法是什么?

    第二个问题略显险恶。当我进入我的AWS终端时,Elastic Beanstalk部分说我没有环境也没有应用程序,尽管我部署的应用程序已启动并正在运行。其次,RDS部分说我没有RDS数据库实例。

    至少可以说我很困惑。

    感谢所有帮助。

2 个答案:

答案 0 :(得分:1)

至于问题的第一部分,MySQL根本无法连接到主机(甚至没有尝试进行身份验证),这意味着您要么主机名错误,要么更多可能不允许远程访问主机名的MySQL。

有关您需要做什么的更多信息,请参阅this answer

关于第二部分,文档表明您应该使用eb initeb update更新您的环境。希望有所帮助。

答案 1 :(得分:0)

打开 VPC SG(在 Writer DB -> Security ->VPC 下)并使用您的本地机器 IP/端口编辑 SG 的入站规则。 (所有 TCP) enter image description here