すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB RDS:ステップ2: ApsaraDB RDS for MySQLインスタンスへの接続

最終更新日:Oct 12, 2024

ApsaraDB RDS for MySQLインスタンスとデータベースを作成した後、手動でRDSインスタンスに接続してデータを管理するか、アプリケーションサーバーをデータベースに接続してサービスをデプロイする必要があります。 このトピックでは、データ管理 (DMS) を使用してRDSインスタンスにログインする方法、またはCLIまたはクライアントを使用してRDSインスタンスに接続する方法について説明します。 ビジネス要件に基づいてログインまたは接続方法を選択できます。

課金ルール

  • RDSインスタンスを作成すると、RDSインスタンスのインスタンス仕様とストレージ容量が課金されます。 RDSインスタンスに対して発生する料金は、課金方法、RDSエディション、インスタンスタイプ、ストレージタイプ、およびストレージ容量によって異なります。 詳細については、「課金項目」をご参照ください。

  • このトピックでは、RDSインスタンスへの接続に使用されるアプリケーションサーバーとサードパーティクライアントの料金は含まれていません。

準備

  • RDSインスタンス、RDSインスタンス上のMySQLデータベース、およびRDSインスタンスの特権アカウントを作成する必要があります。 詳細については、「手順1: ApsaraDB RDS For MySQLインスタンスの作成とデータベースの設定」をご参照ください。

    重要

    このトピックでは、手順1: ApsaraDB RDS for MySQLインスタンスの作成およびデータベースの設定で作成および設定されたRDSインスタンス、データベース、およびアカウントを使用できます。 ビジネス要件に基づいて設定を変更することもできます。

  • DMSを使用してRDSインスタンスにログインする場合は、[準備] セクションをスキップできます。

  • CLIまたはクライアントを使用してRDSインスタンスにログインする場合は、RDSインスタンスのIPアドレスホワイトリストを設定し、接続タイプに基づいてRDSインスタンスの内部エンドポイントまたはパブリックエンドポイントを取得する必要があります。 以下のセクションでは、詳細な操作について説明します。

    IPアドレスホワイトリストの設定と適切な接続タイプの選択

    1. IPアドレスホワイトリストの設定

    RDSインスタンスに接続する前に、IPアドレスまたはアプリケーションサーバーのIPアドレスをRDSインスタンスのIPアドレスホワイトリストに追加する必要があります。 詳細については、「IPアドレスホワイトリストの設定」をご参照ください。 IPアドレスホワイトリストを設定した後にのみ、RDSインスタンスの内部エンドポイントまたはパブリックエンドポイントを取得できます

    2. 適切な接続タイプを選択する

    内部ネットワークまたはインターネット経由でRDSインスタンスに接続できます。 内部ネットワーク経由でRDSインスタンスに接続する場合は、RDSインスタンスの内部エンドポイントを使用する必要があります。 内部ネットワークを介した通信の条件が満たされていない場合、またはオンプレミスのデバイスからRDSインスタンスに接続する場合は、RDSインスタンスのパブリックエンドポイントを使用する必要があります。 次の一覧では、内部ネットワーク経由でRDSインスタンスに接続するために満たす必要がある条件と、RDSインスタンスの内部エンドポイントとパブリックエンドポイントを取得する方法について説明します。

    重要

    内部ネットワーク経由でRDSインスタンスに接続する場合は、次の条件が満たされていることを確認してください。

    • ECS (Elastic Compute Service) インスタンスからRDSインスタンスに接続する場合は、ECSインスタンスとRDSインスタンスが同じリージョンにあり、同じネットワークタイプを使用していることを確認してください。

    • ECSインスタンスとRDSインスタンスが仮想プライベートクラウド (VPC) ネットワークタイプを使用している場合は、インスタンスが同じVPCにあることを確認してください。

    シナリオ

    エンドポイントを取得

    エンドポイントの取得方法

    RDSインスタンスに接続し、内部ネットワークを介した通信の条件が満たされている場合。

    RDSインスタンスの内部エンドポイント

    1. ApsaraDB RDSコンソールにログインし、[インスタンス] ページに移動します。 上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。 RDSインスタンスを見つけ、インスタンスIDをクリックします。

    2. 表示されるページの [基本情報] セクションで、[ネットワークタイプ] パラメーターの右側にある [詳細の表示] をクリックして、RDSインスタンスへの接続に使用されるエンドポイントとポート番号を表示します。

    説明
    • パブリックエンドポイントは、RDSインスタンスにパブリックエンドポイントが適用された後にのみ表示されます。 パブリックエンドポイントを表示するには、[パブリックエンドポイントの申請] をクリックします。

    • [クラスター読み書き接続] セクションでRDSクラスターの読み書きエンドポイントを変更し、[クラスター読み取り専用接続] セクションでRDSクラスターの読み取り専用エンドポイントを変更できます。

    ECSインスタンスからRDSインスタンスに接続したいが、内部ネットワークを介した通信の条件が満たされていない場合。

    RDSインスタンスのパブリックエンドポイント

    オンプレミスのデバイスからRDSインスタンスに接続します。

方法1: DMSコンソールでRDSインスタンスにログイン

DMSは、ライフサイクル全体を通してデータを管理できるワンストップのデータ管理プラットフォームです。 DMSを使用して、グローバルデータアセットの管理、データの管理、データベースの設計と開発、データの統合、データの開発、データの消費を行うことができます。 これらの機能は、企業が効率的かつ安全な方法でデータから価値を取得し、企業のデジタル変革を促進するのに役立ちます。 詳細については、「DMS の概要」および

RDSインスタンスのIPアドレスホワイトリストや接続タイプを設定することなく、DMSを使用してRDSインスタンスにログインし、データを管理および使用できます。

  1. ApsaraDB RDSコンソールにログインし、[インスタンス] ページに移動します。 上部のナビゲーションバーで、RDSインスタンスが存在するリージョンを選択し、RDSインスタンスを見つけて、インスタンスIDをクリックします。

  2. 表示されるページで、ログイン をクリックして、DMSコンソールのログインページに移動します。 image

  3. [データベースインスタンスへのログイン] ダイアログボックスで、ログイン情報を入力し、[ログイン] をクリックします。

    • アクセスモードパラメーターを設定します。 このトピックでは、アカウント + パスワードログインが選択されています。

    • データベースアカウント および データベースパスワード パラメーターを設定します。 このトピックでは、dbuserという名前の特権アカウントとカスタムパスワードを使用します。

    • [制御モード] パラメーターを設定します。 このトピックでは、[フレキシブル管理] を選択します。

      説明
      • RDSインスタンスがフレキシブル管理モードで管理されている場合、DMSを使用してインスタンスを無料で管理できます。 RDSインスタンスが安定した変更またはセキュリティコラボレーションで管理されている場合、料金が発生します。 詳細については、「料金」をご参照ください。

      • Flexible Managementモードと比較して、安定した変更モードとセキュリティコラボレーションモードは、より多くの機能と強化されたデータベース管理機能を提供します。 RDSインスタンスが試用用の場合は、[Flexible Management] を選択することを推奨します。 詳細については、「コントロールモード」をご参照ください。

      image

  4. データベースを表示します。 DMSコンソールの左側のナビゲーションウィンドウで、[データベースインスタンス]> [接続されたインスタンス] を選択して、作成されたデータベースを表示します。 このトピックでは、db_test1データベースが表示されます。 データベースをダブルクリックすることもできます。 image

    説明
    • information_schemamysqlperformance_schemasys、および __recycle_bin_ はシステムデータベースです。

    • RDSインスタンスが存在するが、必要なデータベースが見つからない場合、メタデータが同期されない可能性があります。 必要なデータベースを見つけるには、必要なデータベースが属するRDSインスタンスの上にポインターを移動し、インスタンス名の横にある更新アイコンをクリックします。

方法2: CLIを使用してRDSインスタンスに接続する

サーバーコマンドを使用してデータベースを管理し、ECSインスタンスまたはオンプレミスデバイスからデータベースに接続する場合は、CLIを使用して、データベースが作成されているRDSインスタンスに接続できます。 このトピックでは、Linuxオペレーティングシステムを使用して、CLIを使用してRDSインスタンスに接続する方法を説明します。

重要
  • CLIを使用してRDSインスタンスに接続する前に、RDSインスタンスのIPアドレスホワイトリストを設定し、ビジネス要件に基づいてRDSインスタンスのエンドポイントを取得する必要があります

  • CLIを使用してRDSインスタンスに接続する前に、アプリケーションサーバーにMySQLをインストールする必要があります。 MySQLのインストールに使用できるコマンドは、Linuxディストリビューションによって異なります。

    • CentOS

      sudo yum install mysql
    • Ubuntu

      sudo apt-get update
      sudo apt install mysql-server
  1. RDSインスタンスを接続するアプリケーションサーバーにログインします。 オンプレミスデバイスまたはECSインスタンスからRDSインスタンスに接続できます。 ECSインスタンスへのログイン方法の詳細については、「ウィザードに従ってECSインスタンスを購入する設定を完了する」をご参照ください。

  2. データベース接続のコマンドを実行し、パスワードを入力してから、RDSインスタンスに接続します。 この例では、次のコマンドが使用されます。 コマンドで、hはRDSインスタンスのエンドポイント、PはRDSインスタンスのポート番号、uはデータベースアカウントのユーザー名、pはデータベースアカウントのパスワードを指定します。 コマンドを実行した後、パスワードが必要になります。

    # Command template
    mysql -hEndpoint of the RDS instance -PPort number-uUsername -p
    
    # Sample command
    mysql -hrm-bp**************.mysql.rds.aliyuncs.com -P3306 -udbuser -p
    • エンドポイントを指定します。 ビジネス要件に基づいて、RDSインスタンスを内部ネットワーク経由で接続できるかどうかを判断し、必要なエンドポイントを指定する必要があります。 このトピックでは、内部エンドポイントを使用します。 RDSインスタンスを内部ネットワーク経由で接続できるかどうかを判断する方法、および内部エンドポイントまたはパブリックエンドポイントを取得する方法の詳細については、「準備」をご参照ください。

    • ポートを指定します。 このトピックでは、ポート3306が使用されます。

    • ユーザー名を指定します。 このトピックでは、dbuserという名前の特権アカウントを使用します。

    • Enterキーを押し、enter passwordに特権アカウントのパスワードを入力し、データベース接続のコマンドを実行します。

  3. 次の図のような情報がCLIに表示されている場合、RDSインスタンスは接続されています。 その後、後続の操作を実行できます。 image

方法3: クライアントを使用してRDSインスタンスに接続する

複雑なサーバーコマンドに慣れていない場合は、一般的なサードパーティクライアントを使用してRDSインスタンスに接続することもできます。 このトピックでは、MySQL Workbench 8.0.29を例として使用して、クライアントからRDSインスタンスに接続する方法を説明します。

重要
  • クライアントからRDSインスタンスに接続するには、RDSインスタンスのIPアドレスホワイトリストを設定し、ビジネス要件に基づいてRDSインスタンスのエンドポイントを取得する必要があります

  • 事前にMySQL Workbench 8.0.29をダウンロードしてインストールする必要があります。 詳細については、MySQL Workbenchダウンロードページをご覧ください。

  1. MySQL Workbenchを起動し、[データベース] > [データベースに接続] を選択します。

  2. [データベースに接続] ページで、必要な接続アドレスとアカウントに関する情報を入力します。 连接界面

    • [接続方法] パラメーターを設定します。 このトピックでは、標準 (TCP/IP) を使用します。

    • Hostnameパラメーターを設定します。 ビジネス要件に基づいて、RDSインスタンスを内部ネットワーク経由で接続できるかどうかを判断し、必要なエンドポイントを指定する必要があります。 このトピックでは、内部エンドポイントを使用します。 RDSインスタンスを内部ネットワーク経由で接続できるかどうかを判断する方法、および内部エンドポイントまたはパブリックエンドポイントを取得する方法の詳細については、「準備」をご参照ください。

    • Portパラメーターを設定します。 このトピックでは、ポート3306が使用されます。

    • Usernameパラメーターを設定します。 このトピックでは、dbuserという名前の特権アカウントを使用します。

    • Passwordパラメーターを設定します。 カスタムパスワードを指定する必要があります。

  3. [OK] をクリックしてRDSインスタンスに接続します。 その後、後続の操作を実行できます。

一般的なエラーと解決策

mysqlコマンドが見つかりません

このエラーは、MySQLがインストールされていないために発生します。 次のコマンドを実行してMySQLをインストールします。

  • CentOSオペレーティングシステムを使用している場合は、sudo yum install mysqlコマンドを実行します。

  • Ubuntuオペレーティングシステムを使用している場合は、sudo apt-get updateコマンドを実行してから、sudo apt install mysql-serverコマンドを実行します。

SSL接続エラー: SSLが必要ですが、サーバーがサポートしていません

標準TCP/IP接続にSSL暗号化を必要とするMySQL Workbenchの特定のバージョンを使用しています。 ただし、接続サーバーはSSL暗号化をサポートしていません。 この場合、このトピックで使用されるMySQL Workbench 8.0.29をダウンロードして、通常の接続を確立できます。

エラーコード10060: 'rm -bpxxx.mysql.rds.aliyuncs.com 'でMySQLサーバーに接続できません (10060)

  • ほとんどの場合、このエラーは、設定したIPアドレスのホワイトリストが無効なために発生します。 詳細については、「IPアドレスホワイトリストの設定」をご参照ください。

  • RDSインスタンスとECSインスタンスが 内部ネットワークでの通信条件 ただし、RDSインスタンスの内部エンドポイントに接続しようとします。

データベースサーバーに接続できません

  • ほとんどの場合、このエラーは、設定したIPアドレスのホワイトリストが無効なために発生します。 詳細については、「IPアドレスホワイトリストの設定」をご参照ください。

  • RDSインスタンスとECSインスタンスが 内部ネットワークでの通信条件 ただし、RDSインスタンスの内部エンドポイントに接続しようとします。

ユーザー 'xx "のMySQLサーバーへの接続に失敗しました

  • ほとんどの場合、このエラーは、設定したIPアドレスのホワイトリストが無効なために発生します。 詳細については、「ApsaraDB RDS For MySQLインスタンスのIPアドレスホワイトリストの設定」をご参照ください。

  • RDSインスタンスとECSインスタンスが 内部ネットワークでの通信条件 ただし、RDSインスタンスの内部エンドポイントに接続しようとします。

RDSインスタンスの内部エンドポイントにpingを送信すると、"Destination Host Unreachable" というエラーメッセージが表示されます。

ユーザー 'xxx' @ 'xxx' のアクセスが拒否されました (パスワード: はい)

このエラーは、入力したユーザー名とパスワードが正しくないために発生します。 から正しいユーザー名とパスワードを取得できます。 アカウント 表示できます。

不明なMySQLサーバーホスト 'xxx'(11001)

このエラーは、入力したエンドポイントが無効なために発生します。 有効なエンドポイントはe rm-xxxxxx.mysql.rds.aliyuncs.com形式です。

よくある質問

Function Computeを使用してRDSインスタンスからデータを取得するにはどうすればよいですか。

Function Computeに関数のサードパーティの依存関係をインストールし、組み込みモジュールを使用してRDSインスタンスのデータを取得できます。 詳細については、次をご参照ください: 関数にサードパーティの依存関係をインストールします

関連ドキュメント