web-dev-qa-db-ja.com

AWS Aurora MySQLサーバーレス:MySQL Workbenchから接続する方法

私は自分のプロジェクトでAWS Aurora Serverless for MySQLを使用しようとしていましたが、エンドポイント、ユーザー名、パスワードは持っていますが、それに接続することはできません。

私がやった事:

  1. AWSコンソールの管理から、RDS>インスタンス> Aurora> Serverlessを選択します
  2. デフォルト設定のままにする
  3. データベースを作成する
  4. AWSはAWSクラスターのみを作成します enter image description here
  5. MySQL Workbenchを開き、エンドポイント、ユーザー名、パスワードを使用してデータベースに接続します

結果:

ホストからxxxxx.cluster-abcdefg1234.eu-west-1.rds.amazonaws.com:3306のサーバーへのユーザー 'admin'の接続試行が失敗しました: 'xxxxx.cluster-abcdefg1234のMySQLサーバーに接続できません。 eu-west-1.rds.amazonaws.com '(60)

間違ったステップをしましたか?アドバイスしてください。

****編集****

プロビジョニングされた容量タイプで別のAuroraデータベースを作成しようとしました。 MySqlワークベンチにより、ユーザー名とパスワードを使用してエンドポイントにシームレスに接続できます。これは、ポート3306がワークベンチ用に開かれていることを意味します。

セキュリティグループについて: enter image description here

19
Phong Vu

https://docs.aws.Amazon.com/AmazonRDS/latest/UserGuide/aurora-serverless.html から:

  • Aurora Serverless DBクラスターにパブリックIPアドレスを与えることはできません。
  • Aurora Serverless DBクラスターにアクセスできるのは、Amazon VPCサービスに基づいた仮想プライベートクラウド(VPC)内からのみです。
  • AWS VPN接続またはリージョン間VPCピアリング接続を介してAurora Serverless DBクラスターのエンドポイントにアクセスすることはできません。リージョン内VPCピア接続を介したクラスターのエンドポイントへのアクセスには制限があります。詳細については、Amazon VPCユーザーガイドの「インターフェイスVPCエンドポイント(AWS PrivateLink)」を参照してください。ただし、AWS Direct Connect接続を介してAurora Serverlessクラスターのエンドポイントにアクセスできます。

そのため、EC2インスタンスを介したSSH接続とは別に、mySQL Workbench with AWS Direct Connectを使用してサーバーレスクラスターにアクセスすることもできます。

13
Yoga

Aurora Serverless DBクラスターに接続する1つの方法は、Amazon EC2インスタンスを使用することです。プレビューでは、公的にアクセス可能なAuroraサーバーレスDBクラスターを作成できません。このタスクでは、VPCで公的にアクセス可能なAmazon EC2インスタンスを作成します。このAmazon EC2インスタンスを使用して、AuroraサーバーレスDBクラスターに接続できます。

これは、プレビューのサインアップ時に提供されるドキュメントから直接のものです。 MYSQL Workbenchまたは選択したSQL UIでEC2インスタンスを作成し、SSH Tunnelメソッドを使用してみてください。プレビュー中、Aurora Serverlessを一般にアクセス可能に設定することはできません。

7
cmtzco

最初は、AWS RDS Auroraを接続する際に注意すべき点と同じシナリオで立ち往生しました

  • Cant connect Publicには、Auroraが作成されたのと同じリージョンのEC2インスタンスが必要です。

  • Auroraのパブリックアクセスは[いいえ]で確認する必要があります(私にとってはうまくいきました)。

  • セキュリティグループを作成する必要があります。ここで、受信および送信ルール(EC2インスタンスのIPアドレス)を追加する必要があります。

例:タイプ= MYSQL/AURORA、プロトコル= TCP、ポート範囲= 3306、ソース=カスタム、およびIPアドレス範囲、

  • インスタンスとセキュリティグループをインスタンスに変更し、変更をすぐに適用します。

  • Auroraの作成中に、uは接続するMasterName、Pwd、およびデフォルトのスキーマを作成します。

  • 作成後、クラスターに移動してクラスターエンドポイントを取得し、EC2インスタンスとMySQL Workbenchを使用してログインします。クラスターエンドポイントとしてのホスト名、auroraデータベースの作成中に入力したユーザー名とパスワード。

0
GirishBabuC

VPCのみのサービス(Aurora Serverless、Amazon Neptune、Amazon DocDBなど)に接続するために顧客が使用する一般的なパターンは、中間層(EC2インスタンス、またはALBなど)を持ち、VPCの外部から中間層にアクセスできるようにすることです。ユースケースがいくつかのクエリを試している場合やワークベンチを接続している場合、最も簡単なことは次のとおりです。

  1. サーバーレスデータベースのDNSを解決し、そのIPを取得します
  2. #1で見つけたIPへのターゲットグループを使用して、VPCにALBを作成します
  3. 新しいセキュリティグループを作成し、それをALBに添付します
  4. SGを更新して、どこからでも着信できるようにします。パブリックインターネットアクセスが必要な場合は、すべてのIPからの受信を許可し、VPCでインターネットゲートウェイを有効にし、ALBにパブリックサブネットを使用します。

これがすべて完了すると、ALBを指す新しいDNSになります。次の方法でALBが正しく設定されていることを確認してください。

  1. Telnetを使用してALBエンドポイントに接続します。 telnet alb-endpoint alb-port。成功した場合は、完全なエンドツーエンド接続(ALBへのjsutではなく、すべての接続)があります。
  2. ALBメトリックを確認して、すべてのヘルスチェックに合格していることを確認します。

これが完了したら、ワークベンチでALBエンドポイントを使用します。

このパターンは、非実動システムにのみ推奨されます。関係する手順は、DNSをIPに解決する手順です。そのIPは一時的なものであり、バックグラウンドでスケールコンピューティングまたはフェールオーバーが発生すると変更される可能性があります。

これがお役に立てば幸いです。ステップの詳細が必要な場合はお知らせください。 Neptuneの関連する回答は次のとおりです。

ローカルマシンからAWSのNeptuneに接続

0
big-K