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

PolarDB:エッジクラスターをすぐに体験する

最終更新日:Aug 27, 2025

このガイドでは、ENS クラスター上で PolarDB for MySQL を作成、構成、および接続するための基本的な手順について説明します。

サポートされている リージョン

現在、ENS 上の PolarDB for MySQL は、[海口テレコム][トルコ (イスタンブール)-1][マカオ (中国)-2]、および [ベトナム (ハノイ)-3] でのみサポートされています。

1. ENS ネットワークを作成する

PolarDB クラスターは、Edge Node Service (ENS) ネットワーク内に存在する必要があります。

説明

ENS を以前に使用したことがない場合は、最初に アクティベーションプロセス を完了する必要があります。

  1. ENS コンソール に移動します。

  2. 左側のナビゲーションウィンドウで、[ネットワーク管理] > [ネットワーク] を選択します。

  3. [ネットワークの作成] をクリックします。

  4. [ネットワークの作成] ページで、クラスターをデプロイする予定の エッジリージョンVPC と vSwitch を構成します。

2. PolarDB on ENS クラスターを作成する

  1. PolarDB エッジクラスター購入ページ に移動します。

  2. 以下の主要なパラメーターを構成します。このクイックスタートでは、他の設定はデフォルト値のままにしておくことができます。

パラメーター

説明

[課金方法]

エッジクラスターは、サブスクリプション (前払い) 課金方法のみをサポートしています。

説明

これは、安定した長期ワークロードに最適です。

[エッジデータセンター]

クラスターが存在するエッジリージョンを選択します。

説明

プライベートネットワーク接続を確保するために、ステップ 1 で作成した ENS ネットワークと同じリージョンである必要があります。

[互換性]

クラスターの MySQL 互換バージョンを選択します。

  • [MySQL 8.0.2]: community MySQL 8.0.18 以前のバージョンと完全な互換性があります。

  • [MySQL 8.0.1]: community MySQL 8.0.13 以前のバージョンと完全な互換性があります。

[エディション]

[専用][汎用] から選択します。

  • 専用: 各クラスターは、CPU などの割り当てられた計算リソースを排他的に使用します。同じサーバー上の他のクラスターとリソースを共有しません。これにより、より安定した信頼性の高いパフォーマンスが得られます。

  • 汎用: 同じサーバー上の異なるクラスターは、CPU などのアイドル状態の計算リソースを共有します。このリソースの再利用により、費用対効果が向上します。

2 つのエディションの詳細な比較については、「汎用仕様と専用仕様のどちらを選択するか」をご参照ください。

ネットワーク

ステップ 1 で作成した VPC と vSwitch を選択します。

[仕様]

パフォーマンスニーズを満たすノード仕様 (CPU とメモリ) を選択します。

[ノード数]

デフォルトは 2 つのノード (1 つの読み取り/書き込みノードと 1 つの読み取り専用ノード) です。必要に応じてノード数を構成できます。

説明
  • 1 つ以上の読み取り専用ノードを持つクラスターを購入する場合、購入後に読み取り専用ノードの数を 0 に変更することはできません。既存のクラスターの読み取り専用ノードの数を 0 に変更するには、新しいクラスターを購入し、元のクラスターから新しいクラスターにデータを移行します。 DTS などの移行ツールまたはメジャーバージョンアップグレード機能を使用できます。

  • ノードの説明:

    • 読み取り/書き込みノード: プライマリノードとも呼ばれます。書き込み操作といくつかの読み取り操作を処理します。データは、物理レプリケーションによってプライマリノードと読み取り専用ノード間で同期されます。

    • 読み取り専用ノード: プライマリノードの負荷を軽減するために読み取り操作を処理します。高可用性と拡張性を提供します。

    • [IMCI 読み取り専用ノード]: インメモリ列インデックス (IMCI) 機能の機能ノードです。列指向ストレージテクノロジーを使用して分析クエリ (OLAP) を高速化し、プライマリノードと読み取り専用ノードの負荷を軽減します。高可用性と拡張性を提供します。

ストレージタイプ

基盤となるストレージのパフォーマンスレベルを選択します。

  • PL0 ESSD: パフォーマンスレベル 0 (PL0) のディスク。

  • PL1 ESSD: パフォーマンスレベル 1 (PL1) のディスク。 PL0 ESSD の 5 倍の IOPS を提供します。

ストレージ容量

購入するストレージ容量を構成します。デフォルトは 100 GB です。

3. データベースアカウントを作成する

  1. [エッジクラスター用 PolarDB コンソール] に移動し、新しく作成したエッジクラスターを選択します。

  2. 左側のメニューから、[設定と管理] > [アカウント] をクリックします。

  3. [アカウントの作成] をクリックします。 セキュリティニーズに基づいて、[特権アカウント] または [標準アカウント] を作成できます。詳細については、「アカウント権限」をご参照ください。

image

4. クラスター エンドポイント アドレスを取得する

クラスターに接続するには、クラスターのエンドポイントアドレスが必要です。

  1. PolarDB エッジクラスターコンソールで、クラスターの詳細ページに移動します。

  2. 左側のメニューから、[データベース接続] をクリックします。

  3. クラスターエンドポイントアドレスをコピーします。このアドレスは、クラスター内のすべてのノードへの接続の負荷を分散します。デフォルトポートは 3306 です。

image

5. データベースに接続する

ビジネス要件に基づいて接続方法を選択できます。クラスターへの接続の例を以下に示します。

クライアントを使用してクラスターに接続する

MySQL クライアントを使用して PolarDB クラスターに接続できます。この例では、MySQL Workbench 8.0.29 を使用しています。他のタイプのクライアントを使用する場合の操作も同様です。

  1. MySQL Workbench をインストールします。詳細については、MySQL Workbench ダウンロードページ にアクセスしてください。

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

  3. 接続情報を入力し、[OK] をクリックします。

    连接界面

    パラメーター

    説明

    [ホスト名]

    データベースエンドポイント。詳細については、「データベース接続」をご参照ください。

    pc-2***.rwlb.rds.aliyuncs.com

    [ポート]

    データベースエンドポイントに対応するポート番号。

    説明

    デフォルトのポート番号は 3306 です。

    3306

    [ユーザー名]

    データベースアカウント。詳細については、「データベースアカウントを作成する」をご参照ください。

    polardb_mysql_user

    [パスワード]

    データベースアカウントのパスワード。

    Pass***233

CLI を使用してクラスターに接続する

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

構文:

mysql -h <Endpoint> -P <Port> -u <Account> -p <Password>

:

mysql -h pc-2***.rwlb.rds.aliyuncs.com -P3306 -upolardb_mysql_user -pPass***233

パラメーター

説明

-h

データベースエンドポイント。詳細については、「データベース接続」をご参照ください。

pc-2***.rwlb.rds.aliyuncs.com

-P

データベースエンドポイントに対応するポート番号。

説明
  • デフォルトのポート番号は 3306 です。

  • デフォルトポートを使用する場合は、このパラメーターの値を指定する必要はありません。

3306

-u

データベースアカウント。詳細については、「データベースアカウントを作成する」をご参照ください。

polardb_mysql_user

-p

データベースアカウントのパスワード。

説明

このパラメーターは必須です。

  • このパラメーターを指定しない場合、パスワードを入力してください メッセージが表示されたら、パスワードを再入力する必要があります。

  • このパラメーターを指定する場合は、-p とパスワードの間にスペース文字を入力しないでください。

Pass***233

アプリケーションを使用してクラスターに接続する

PolarDB for MySQL クラスターへの接続は、通常の MySQL データベースへの接続と似ています。データベースのエンドポイント、ポート、アカウント、およびパスワードを置き換えるだけです。次の例は、いくつかの開発言語でアプリケーションを使用して PolarDB データベースにアクセスする方法を示しています。

Java

この例では、Maven プロジェクトを使用して、MySQL JDBC ドライバーを使用して PolarDB for MySQL クラスターに接続します。

  1. 最初に、MySQL JDBC ドライバーの依存関係を pom.xml ファイルに追加します。サンプルコード:

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.27</version>
    </dependency>
  2. クラスターに接続します。<HOST>、ポート番号、<USER><PASSWORD><DATABASE><YOUR_TABLE_NAME>、および <YOUR_TABLE_COLUMN_NAME> をデータベースの情報に置き換えます。

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.Statement;
    
    public class DatabaseConnection {
       public DatabaseConnection() {
       }
    
       public static void main(String[] args) {
          // 接続する PolarDB クラスターのエンドポイント、ポート、およびデータベース名。
          String url = "jdbc:mysql://<HOST>:3306/<DATABASE>?useSSL=false&serverTimezone=UTC";
          // データベースアカウント。
          String user = "<USER>";
          // データベースアカウントのパスワード。
          String password = "<PASSWORD>";
    
          try {
             Class.forName("com.mysql.cj.jdbc.Driver");
             Connection conn = DriverManager.getConnection(url, user, password);
             Statement stmt = conn.createStatement();
             // 照会するデータテーブルの名前。
             ResultSet rs = stmt.executeQuery("SELECT * FROM `<YOUR_TABLE_NAME>`");
    
             while(rs.next()) {
                // 照会するデータテーブルの列名。
                System.out.println(rs.getString("<YOUR_TABLE_COLUMN_NAME>"));
             }
    
             rs.close();
             stmt.close();
             conn.close();
          } catch (Exception var7) {
             var7.printStackTrace();
          }
    
       }
    }

Python

この例では、Python3 を使用して、PyMySQL ライブラリを使用して PolarDB for MySQL クラスターに接続します。

  1. 最初に、PyMySQL ライブラリをインストールします。次のコマンドを実行してインストールできます。

    pip3 install PyMySQL
  2. クラスターに接続します。<HOST>、ポート番号、<USER><PASSWORD><DATABASE>、および <YOUR_TABLE_NAME> をデータベースの情報に置き換えます。

    import pymysql
    
    # データベース接続パラメーター。
    host = '<HOST>' # PolarDB クラスターのエンドポイント。
    port = 3306 # デフォルトポート 3306
    user = '<USER>' # データベースアカウント。
    password = '<PASSWORD>' # データベースアカウントのパスワード。
    database = '<DATABASE>' # 接続するデータベースの名前。
    
    try:
        # データベース接続を確立します。
        connection = pymysql.connect(
            host=host,
            port=port,
            user=user,
            passwd=password,
            db=database
        )
    
        # カーソルを取得します。
        with connection.cursor() as cursor:
            # SQL クエリを実行します。
            sql = "SELECT * FROM '<YOUR_TABLE_NAME>'" # 照会するテーブルの名前。
            cursor.execute(sql)
    
            # クエリ結果を取得します。
            results = cursor.fetchall()
            for row in results:
                print(row)
    
    finally:
        # データベース接続を閉じます。
        if 'connection' in locals() and connection.open:
            connection.close()
    

Go

この例では、go1.23.0 を使用して、database/sql パッケージと go-sql-driver/mysql ドライバーを使用して PolarDB for MySQL クラスターに接続します。

  1. 最初に、go-sql-driver/mysql ドライバーをインストールします。次のコマンドを実行してドライバーをインストールできます。

    go get -u github.com/go-sql-driver/mysql
  2. クラスターに接続します。<HOST>、ポート番号、<USER><PASSWORD><DATABASE>、および <YOUR_TABLE_NAME> をデータベースの情報に置き換えます。

    package main
    
    import (
        "database/sql"
        "fmt"
        "log"
        _ "github.com/go-sql-driver/mysql"
    )
    
    func main() {
        // データベース接続パラメーター。
        dbHost := "<HOST>" // PolarDB クラスターのエンドポイント。
        dbPort := "3306" // デフォルトポート 3306。
        dbUser := "<USER>" // データベースアカウント。
        dbPass := "<PASSWORD>" // データベースアカウントのパスワード。
        dbName := "<DATABASE>" // 接続するデータベースの名前。
    
        // DSN (データソース名) を構築します
        dsn := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8mb4&parseTime=True&loc=Local", dbUser, dbPass, dbHost, dbPort, dbName)
    
        // データベース接続を作成します。
        db, err := sql.Open("mysql", dsn)
        if err != nil {
            log.Fatalf("データベースへの接続に失敗しました: %v", err)
        }
        defer db.Close()
    
        // 接続をテストします。
        err = db.Ping()
        if err != nil {
            log.Fatalf("データベースの ping に失敗しました: %v", err)
        }
    
        // カーソルを作成します。
        var result string
        err = db.QueryRow("SELECT VERSION()").Scan(&result)
        if err != nil {
            log.Fatalf("クエリの実行に失敗しました: %v", err)
        }
    
        // データベースバージョンを出力します。
        fmt.Printf("データベースに接続しました。バージョン: %s\n", result)
    
        // SQL クエリを実行します。
        rows, err := db.Query("SELECT * FROM '<YOUR_TABLE_NAME>'") // 照会されるデータテーブルの名前。
        if err != nil {
            log.Fatalf("クエリの実行に失敗しました: %v", err)
        }
        defer rows.Close()
    }