ここでは、Data Management Service (DMS) または MySQL クライアントを使用して PolarDB MySQL クラスターに接続する方法について説明します。

始める前に

データベースクラスターの特権アカウントまたは標準アカウントを作成していること。 詳細については、「データベースアカウントの作成」をご参照ください。

DMS を使用を使用したクラスターへの接続

DMS は Alibaba Cloud が提供するグラフィカルなデータ管理サービスです。 データ、サーバー、およびスキーマの管理、アクセスセキュリティ、BI チャート、データトレンド、データトラッキング、ならびにパフォーマンスおよび最適化のための統合ソリューションを提供します。 DMSは、MySQL、SQL Server、PostgreSQL その他のリレーショナルデータベース、ならびに MongoDB、Redis その他の非リレーショナルデータベースをサポートしています。 DMS は Linux サーバーも管理できます。

  1. 対象クラスターを探し、クラスター ID をクリックします。 [概要] ページが表示されます。
  2. ページの右上に表示される [データベースにログイン] をクリックします。概要
  3. データベースログインページで、エンドポイントとポート番号をコロン (:) で区切って入力します。 特権アカウントまたは標準アカウントのユーザー名とパスワードを入力し、[ログイン] をクリックします。ログインページ
    DMS はプライマリエンドポイントへのログインのみをサポートし、クラスターエンドポイントへのログインはサポートしません。 エンドポイントを表示する方法の詳細については、「 エンドポイントの表示」をご参照ください。

クライアントを使用したクラスターへの接続

MySQL クライアントを使用して、PolarDB MySQL クラスターに接続できます。 ここでは、HeidiSQL を使用します。

  1. HeidiSQL クライアントを起動します。
  2. セッションマネージャの左下隅で、[新規] をクリックします。セッションマネージャー
  3. 接続する PolarDB クラスターの情報を入力します。 パラメーターを次の表に示します。
    パラメーター 説明
    ネットワーク種別 接続するデータベースのネットワーク種別。 [MariaDB] または [MySQL (TCP/IP)] を選択します。
    ホスト名/IP クラスターのパブリックまたは内部エンドポイントを入力します。
    • クライアントが ECS インスタンスにデプロイされており、そのインスタンスのリージョンおよびネットワークタイプが接続先クラスターと同じ場合は、イントラネット エンドポイントを使用できます。 たとえば、ECS インスタンスと PolarDB クラスターが、どちらも中国 (杭州) リージョンにある同じ VPC 内にある場合、 イントラネットエンドポイントを使用して、安全な接続を確立できます。
    • その他の状況ではパブリックエンドポイントを使用します。
    PolarDB クラスターのエンドポイントおよびポート情報を表示するには、次の手順を実行します:
    1. ApsaraDB for PolarDB コンソールにログインします。
    2. 画面左上で、クラスターが配置されているリージョンを選択します。
    3. 対象のクラスターを探し、クラスター ID をクリックします。
    4. [概要] ページで、エンドポイントおよびポートの情報を表示できます。
    ユーザー PolarDB クラスターへの接続に使用されるアカウント。
    パスワード アカウントのパスワード。
    ポート パブリックまたは内部エンドポイントの対応するポートを入力します。
  4. [開く] をクリックします。 接続情報が正しければ、PolarDB クラスターに接続できます。HeidiSQLがデータベースに接続

コマンドラインを使用したクラスターへの接続

MySQLがサーバーにインストールされている場合は、コマンドラインで次のコマンドを実行して、PolarDB MySQL クラスターに接続できます。

mysql -h<Endpoint> -P<Port> -u<Username> -p<Password> -D<Database>
パラメーター 説明
-h PolarDB MySQL クラスターのパブリックまたは内部エンドポイント。 詳細については、「エンドポイントの表示」をご参照ください。 pc-bpxxxxxxxxxxxxxx.mysql.polardb.rds.aliyuncs.com
-P PolarDB MySQL クラスターのポート。
  • 内部エンドポイントへの接続を確立する場合は、PolarDB MySQL クラスターの内部ポートを入力する必要があります。
  • パブリックエンドポイントへの接続を確立する場合は、PolarDB MySQL クラスターのパブリックポートを入力する必要があります。
  • デフォルトのポートは 3306 です。
  • 使用するポートがデフォルトのポートである場合、このパラメーターは空のままにできます。
3306
-u PolarDB クラスターへの接続に使用されるアカウント。 root
-p アカウントのパスワード。
このパラメーターは省略可能です。
  • このパラメーターを指定しない場合は、後でパスワードを入力する必要があります。
  • このパラメーターを指定する場合、-p とデータベースパスワードとの間にスペースは必要ありません。
password233
-D 接続するデータベースの名前。
  • このパラメーターは省略可能です。
  • データベース名のみを入力して、-D を省略できます。
mysql

接続失敗時のトラブルシューティング

  • IP アドレスホワイトリストが正しく設定されていない。
    • デフォルトのホワイトリストには、IP アドレス 127.0.0.1 のみが含まれています。 127.0.0.1 は、いかなる IP アドレスも PolarDB クラスターへのアクセスを許可されていないことを示します。 したがって、ホワイトリストに IP アドレスを追加する必要があります。 詳細については、「クラスターの IP アドレスホワイトリストの設定」をご参照ください。
    • ホワイトリスト内の IP アドレスが 0.0.0.0 に設定されている場合。正しい設定は 0.0.0.0/0 です。
      0.0.0.0/0 は、すべての IP アドレスが RDS インスタンスにアクセスできることを示します。 この CIDR ブロックをホワイトリストに追加する場合は、ご注意ください。
    • ホワイトリストに追加するパブリック IP アドレスが、実際の出力 IP アドレスとは異なる場合。 たとえば、パブリック IP アドレスが動的 IP アドレスである可能性があります。 パブリック IP アドレスの照会に使用されるツールまたは Web サイトが、誤った IP アドレスを提供しています。
  • 内部エンドポイントまたはパブリックエンドポイントが誤って使用されている。

    内部エンドポイントを使用してインターネット経由で接続しようとしたり、パブリックエンドポイントを使用して内部ネットワーク経由で接続しようとすれば、接続は失敗します。

    必要に応じてエンドポイントを使い分けます。 内部ネットワークを介して PolarDB クラスターに接続する場合は、内部エンドポイントを使用する必要があります。 インターネット経由でクラスターに接続する必要がある場合は、パブリックエンドポイントを使用する必要があります。

  • ECS インスタンスと PolarDB クラスターのネットワークタイプが異なっている場合。 ECS インスタンスがクラシックネットワークで実行され、RDS インスタンスが VPC で実行されています。
    • 解決策 1 (推奨):ECS インスタンスを同じ VPC に移行します。
      内部ネットワークを介して通信するには、ECS インスタンスと PolarDB クラスターが同じ VPC にある必要があります。
    • 解決策 2:ClassicLink 機能を使用して、クラシックネットワーク内の ECS インスタンスと VPC 内の PolarDB クラスターの間に内部ネットワーク接続を確立します。
    • 解決策 3:クラスターのパブリックエンドポイントを使用して、インターネット経由で ECS インスタンスを PolarDB クラスターに接続します。 この解決策は、セキュリティ、安定性、およびパフォーマンスが最も低くなります。