ApsaraDB RDS for MySQL インスタンスを作成し、アカウントの作成やホワイトリストの設定などの必要な構成を完了すると、クライアントまたは CLI を使用して RDS インスタンスに接続できます。このトピックでは、インターネットまたは内部ネットワークを介してクライアントまたは CLI を使用して RDS インスタンスに接続する方法について説明します。また、接続エラーに関連する一般的なエラーの処理方法についても説明します。
前提条件
RDS インスタンスが作成され、RDS インスタンスのデータベースとアカウントが作成されていること。詳細については、「ステップ 1: ApsaraDB RDS for MySQL インスタンスを作成し、データベースを構成する」をご参照ください。
RDS インスタンスの IP アドレスのホワイトリストが構成されていること。詳細については、「IP アドレスホワイトリストを構成する」をご参照ください。
推奨事項
内部ネットワーク経由の接続条件が満たされている場合は、低レイテンシと高安定性を実現するために、内部エンドポイントを使用して RDS インスタンスに接続することをお勧めします。
内部ネットワーク経由の接続条件
Elastic Compute Service (ECS) インスタンスを内部ネットワーク経由で RDS インスタンスに接続する場合、次の条件を満たす必要があります。
ECS インスタンスと RDS インスタンスが同じ Alibaba Cloud アカウント内で作成され、同じネットワークタイプを使用していること。
ECS インスタンスと RDS インスタンスが両方とも仮想プライベートクラウド (VPC) に存在する場合、インスタンスは同じ VPC に存在する必要があります。
ECS インスタンスのプライベート IP アドレスが RDS インスタンスの IP アドレスホワイトリストに追加されていること。詳細については、「ホワイトリストを構成する」をご参照ください。
インターネット経由で RDS インスタンスに接続する場合は、インスタンスのアップグレードまたは仕様変更中にパブリック IP アドレスが変更される可能性があるため、パブリック IP アドレスではなくインスタンスエンドポイントを使用することをお勧めします。
説明curl ipinfo.io/ip
コマンドを実行して、オンプレミスクライアントのパブリック IP アドレスを照会できます。
手順
CLI を使用して RDS インスタンスに接続する
次の例では、Linux が実行されているサーバーから RDS インスタンスに接続する方法について説明します。接続前に、サーバーに MySQL をインストールする必要があります。次のコマンドを実行して MySQL をインストールできます。
CentOS オペレーティングシステムを使用している場合は、
sudo yum install mysql command
を実行します。Ubuntu オペレーティングシステムを使用している場合は、
sudo apt-get update
コマンドを実行してから、sudo apt install mysql-server
コマンドを実行します。
RDS インスタンスに接続するサーバーにログインします。たとえば、サーバーは ECS インスタンスまたはオンプレミスデバイスにすることができます。
説明ECS インスタンスへのログイン方法の詳細については、「ECS コンソール (エクスプレスバージョン) を使用した ECS インスタンスの作成と管理」の「インスタンスに接続する」セクションをご参照ください。ECS コンソール (簡易版) を使用して ECS インスタンスを作成および管理する
接続コマンドを実行します。
mysql -hEndpoint -PPort -uUsername -pPassword
説明コマンドを実行した後にパスワードを入力できます。
大文字の P はポート番号を指定し、小文字の p はパスワードを指定します。
エンドポイントとポート番号: RDS インスタンスへの接続に使用するエンドポイントとポート番号を入力します。
シナリオ
取得するエンドポイント
エンドポイントを取得する方法
ECS インスタンスから RDS インスタンスに接続します。ECS インスタンスと RDS インスタンスは、内部ネットワーク経由の通信の条件を満たしています。
RDS インスタンスの内部エンドポイント
ApsaraDB RDS コンソールにログインし、インスタンス ページに移動します。上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。次に、RDS インスタンスを見つけて、インスタンス ID をクリックします。
表示されるページの [基本情報] セクションで、[ネットワークタイプ] パラメーターの右側にある [詳細の表示] をクリックして、RDS インスタンスへの接続に使用するエンドポイントとポート番号を表示します。
説明RDS インスタンスに接続するために使用するエンドポイントとポート番号を表示するには、RDS インスタンスの IP アドレスホワイトリストを構成する必要があります。
パブリックエンドポイントは、[パブリックエンドポイントの申請] をクリックして RDS インスタンスのパブリックエンドポイントが申請された後にのみ表示されます。
[クラスタの読み取り/書き込み接続] セクションで RDS クラスタの読み取り/書き込みエンドポイントを変更し、[クラスタの読み取り専用接続] セクションで RDS クラスタの読み取り専用エンドポイントを変更できます。
ECS インスタンスから RDS インスタンスに接続します。ECS インスタンスと RDS インスタンスは、内部ネットワーク経由の通信の条件を満たしていません。
RDS インスタンスのパブリックエンドポイント
オンプレミスデバイスから RDS インスタンスに接続します。
ユーザー名とパスワード: RDS インスタンスへの接続に使用するアカウントのユーザー名とパスワードは、インスタンス詳細ページの [アカウント] ページから取得できます。
コマンド例
接続確立
説明接続エラーが発生した場合は、「一般的な接続エラー」に記載されている手順に従ってエラーを解決できます。
クライアントを使用して RDS インスタンスに接続する
汎用 MySQL クライアントを使用して、RDS インスタンスに接続できます。次の例では、MySQL Workbench 8.0.29 を使用して RDS インスタンスに接続する方法について説明します。別のクライアントを使用する場合でも、接続操作は同様です。
MySQL Workbench をインストールします。詳細については、MySQL Workbench ダウンロードページ をご覧ください。
MySQL Workbench を起動し、 を選択します。
接続情報を入力し、[OK] をクリックします。
[ホスト名] と [ポート]: RDS インスタンスへの接続に使用するエンドポイントとポート番号を入力します。
シナリオ
取得するエンドポイント
エンドポイントを取得する方法
ECS インスタンスから RDS インスタンスに接続します。ECS インスタンスと RDS インスタンスは、内部ネットワーク経由の通信の条件を満たしています。
RDS インスタンスの内部エンドポイント
ApsaraDB RDS コンソールにログインし、インスタンス ページに移動します。上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。次に、RDS インスタンスを見つけて、インスタンス ID をクリックします。
表示されるページの [基本情報] セクションで、[ネットワークタイプ] パラメーターの右側にある [詳細の表示] をクリックして、RDS インスタンスへの接続に使用するエンドポイントとポート番号を表示します。
説明RDS インスタンスに接続するために使用するエンドポイントとポート番号を表示するには、RDS インスタンスの IP アドレスホワイトリストを構成する必要があります。
パブリックエンドポイントは、[パブリックエンドポイントの申請] をクリックして RDS インスタンスのパブリックエンドポイントが申請された後にのみ表示されます。
[クラスタの読み取り/書き込み接続] セクションで RDS クラスタの読み取り/書き込みエンドポイントを変更し、[クラスタの読み取り専用接続] セクションで RDS クラスタの読み取り専用エンドポイントを変更できます。
ECS インスタンスから RDS インスタンスに接続します。ECS インスタンスと RDS インスタンスは、内部ネットワーク経由の通信の条件を満たしていません。
RDS インスタンスのパブリックエンドポイント
オンプレミスデバイスから RDS インスタンスに接続します。
[ユーザー名] と [パスワード]: RDS インスタンスへの接続に使用するアカウントのユーザー名とパスワードは、インスタンス詳細ページの [アカウント] ページから取得できます。
ECS インスタンスと RDS インスタンス間のリージョン間またはアカウント間の接続
インターネットベースの接続: RDS インスタンスの パブリックエンドポイント を使用して、RDS インスタンスへのリージョン間またはアカウント間のインターネットベースの接続を確立できます。RDS インスタンスで生成されたインターネットの送受信トラフィックに対して課金されることはありません。
内部ネットワークベースの接続: ECS インスタンスと RDS インスタンスが異なるリージョンまたは異なる Alibaba Cloud アカウント内に存在する場合、内部ネットワーク経由でインスタンスを接続することはできません。VPC は相互に分離されています。ただし、VPC ピアリング接続または Cloud Enterprise Network (CEN) インスタンスを使用して、2 つの異なる VPC を接続できます。これにより、ECS インスタンスはリージョンまたは Alibaba Cloud アカウントをまたいで RDS インスタンスに接続できます。
VPC ピアリング接続: リージョンまたは Alibaba Cloud アカウントをまたいで VPC 間の通信を低コストで実現できます。ただし、VPC ピアリング接続の構成は比較的複雑です。この方法は、少数の VPC を接続する必要がある単純なシナリオに適しています。
CEN インスタンス: リージョンまたは Alibaba Cloud アカウントをまたいで VPC 間の通信を高コストで実現できます。ただし、CEN インスタンスの構成は簡単です。この方法は、多数の VPC を接続する必要がある複雑なシナリオに適しています。
一般的な接続エラー
FAQ
RDS インスタンスは Elastic IP アドレス (EIP) をサポートしていますか?
いいえ、RDS インスタンスは EIP をサポートしていません。
ECS インスタンスと RDS インスタンスが同じ VPC またはリージョンに存在しない場合、どのように接続すればよいですか?
VPC ピアリング接続または Cloud Enterprise Network (CEN) インスタンスを使用して、VPC 間の通信を有効にすることができます。詳細については、「VPC ピアリング接続」および「CEN インスタンスに VPC を接続する」をご参照ください。
Telnet を使用してコンピューターを RDS インスタンスに接続できない問題を解決するにはどうすればよいですか?
Telnet を使用してコンピューターを RDS インスタンスに接続できない場合は、次の項目を確認できます。
RDS インスタンスのサービスポートが正しいこと、およびインターネット経由でアクセスできること。
RDS インスタンスのセキュリティグループまたはファイアウォールルールで、コンピューターの IP アドレスからのアクセスリクエストが許可されていること。
ホスト名やポート番号などの接続パラメーターが正しく構成されていること。
問題が Telnet 固有の問題であるかどうか。
mysql
クライアントまたはデータベース管理ツールなどの他の方法を使用して RDS インスタンスに接続し、確認できます。
関連情報
接続エラーのトラブルシューティング方法の詳細については、「ApsaraDB RDS インスタンスに接続できない場合はどうすればよいですか。」をご参照ください。
より便利で効率的な方法で RDS インスタンスに接続する方法の詳細については、「DMS を使用して ApsaraDB RDS for MySQL インスタンスにログインする」をご参照ください。
異なるデータベースエンジンを実行する RDS インスタンスへの接続方法の詳細については、次のトピックをご参照ください。