AWS RDS:使用Navicat进行连接

时间:2016-09-14 07:49:45

标签: amazon-web-services amazon-rds

我刚在N.Virginia&创建了RDS实例。尝试使用Navicat连接该数据库。

但是我无法连接它。

通过互联网搜索后,我发现我们需要配置安全组。但就我而言,有一则通知:

Your account does not support the EC2-Classic Platform in this region. DB Security Groups are only needed when the EC2-Classic Platform is supported. Instead, use VPC Security Groups to control access to your DB Instances. Go to the EC2 Console to view and manage your VPC Security Groups. For more information, see AWS Documentation on Supported Platforms and Using RDS in VPC.

请帮我解决这个问题。并且N.Virginia也是AWS自动分配的内容。在Free-tier中选择N.Viginia是件好事。

1 个答案:

答案 0 :(得分:4)

我可能不会建议您从本地系统获取RDS数据库的直接链接;我可能会建议只能登录ec2实例,但让我们看看

当您在RDS中创建数据库(将是Oracle,mysql ...)时,您定义了如何/谁将访问它。

  1. 使您的实例公开访问
  2. enter image description here

      

    如果希望托管数据库实例的VPC之外的EC2实例和设备连接到数据库实例,请选择“是”。如果选择“否”,Amazon RDS将不会为数据库实例分配公共IP地址,并且VPC之外的任何EC2实例或设备都无法连接。如果选择“是”,则还必须选择一个或多个VPC安全组,以指定哪些EC2实例和设备可以连接到数据库实例。

    如果您说yes,您将能够从本地笔记本电脑连接到您的数据库。如果你说no,只有从同一个VPC中启动的ec2实例才能访问它。

    1. 定义您的VPC安全组
    2. 如果选择现有VPC,则可能有一些已定义的安全组。如果您没有VPC或没有现有的安全组。可以将Security groups视为防火墙,您定义了哪个端口已打开以及谁可以访问。

      如果您离开创建新的安全组,数据库将启动,并且将创建一个新的安全组。您可以从AWS控制台查看(确保选择您创建数据库的相同区域)或直接https://console.aws.amazon.com/vpc/home?region=us-east-1#securityGroups :(如果您使用其他内容,请替换该区域)。创建的新安全组将命名为rds-launch-wizard

      enter image description here

      编辑安全组并查看入站规则,默认情况下,AWS将创建一个新规则来打开您的IP端口(取决于数据库),您可以将其更改为打开更多IP或进一步限制。

      安全规则是为RDS支持的数据库(Oracle,MS SQL和MySQL / Aurora)预定义的,因此只需在添加新的入站规则时从列表中选择正确的项目

      启动数据库实例后,您可以查看端点

      enter image description here

      因此您可以从本地笔记本电脑连接

      $ mysql -u <username> -p -h <database>.cnrsdab7emat.us-east-1.rds.amazonaws.com
      Enter password:
      Welcome to the MySQL monitor.  Commands end with ; or \g.
      Your MySQL connection id is 21
      Server version: 5.6.10 MySQL Community Server (GPL)
      
      Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
      
      Oracle is a registered trademark of Oracle Corporation and/or its
      affiliates. Other names may be trademarks of their respective
      owners.
      
      Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
      
      mysql> status
      --------------
      mysql  Ver 14.14 Distrib 5.6.22, for osx10.10 (x86_64) using  EditLine wrapper
      
      Connection id:      21
      Current database:
      Current user:       <username>@90.27.155.48
      SSL:            Not in use
      Current pager:      stdout
      Using outfile:      ''
      Using delimiter:        ;
      Server version:     5.6.10 MySQL Community Server (GPL)
      Protocol version:       10
      Connection:         <database>.cnrsdab7emat.us-east-1.rds.amazonaws.com via TCP/IP
      Server characterset:    latin1
      Db     characterset:    latin1
      Client characterset:    utf8
      Conn.  characterset:    utf8
      TCP port:           3306
      Uptime:         6 min 33 sec
      
      Threads: 5  Questions: 2656  Slow queries: 0  Opens: 89  Flush tables: 1  Open tables: 82  Queries per second avg: 6.758
      --------------
      
      mysql>
      

      如果您更喜欢使用Navicat进行连接,则应该可以设置设置以建立相同的连接。