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

PolarDB:エンジンバージョン5.6、5.7、8.0

最終更新日:May 23, 2024

データベースエンジンは、データベースカーネルとも呼ばれます。 PolarDB for MySQLは、5.6、5.7、8.0のエンジンバージョンを提供します。

次の図は、PolarDB for MySQLアーキテクチャでのデータベースエンジンの位置を示しています。1

エンジンバージョンのコンポーネントとその関係

PolarDB for MySQLの完全なエンジンバージョン番号は、メジャーバージョン (DBバージョン) 番号、マイナーバージョン番号、リビジョンバージョン番号の3つの部分で構成されています。 次の図は、PolarDB for MySQLバージョン8.0を例として、3つの部分の関係を示しています。版本号说明

メジャーバージョン番号は、PolarDB for MySQLデータベースエンジンバージョンのキー識別子です。 ほとんどの場合、メジャーバージョンは1つ以上のマイナーバージョンを含む。 たとえば、メジャーバージョン5.6にはマイナーバージョン5.6.16が1つだけ含まれ、メジャーバージョン8.0にはマイナーバージョン8.0.1と8.0.2が2つ含まれています。 異なるマイナーバージョンの機能は大きく異なる場合があります。 ビジネス要件に基づいてマイナーバージョンを選択します。 ほとんどの場合、マイナーバージョンには複数のリビジョンバージョンがあります。 リビジョンバージョンは、既存の機能を最適化または改善したり、新しい機能を追加したりします。 その後のマイナーバージョンと改訂バージョンは、より強力なセキュリティ保護とより良いパフォーマンスを提供します。

説明

PolarDB for MySQLの後のエンジンバージョンには、以前のバージョンのすべての機能が含まれており、以前のバージョンと完全に下位互換性があります。 したがって、エンジンバージョンのアップグレード後も、変更を加えることなくアプリケーションを引き続き使用できます。 エンジンバージョンをアップグレードする方法の詳細については、「エンジンバージョンの更新」をご参照ください。

エンジンバージョンのリリースノート

Alibaba Cloudは、各エンジンバージョンのリリースノートを提供しています。 リリースノートには、新機能、変更された機能、および修正された問題が含まれます。 詳細については、以下のトピックをご参照ください。

エンジンバージョンの互換性

次のセクションでは、PolarDB for MySQLエンジンバージョンの互換性情報について説明します。

  • ANSIおよびISO SQL標準に準拠しています。 クラスターのsql_modeパラメーターをANSIに設定して、ANSIセッションモードを有効にできます。 クラスターパラメーターの変更方法の詳細については、「クラスターパラメーターとノードパラメーターの設定」をご参照ください。

  • 0から3.51までのOpen Database Connectivity (ODBC) バージョンをサポートします。

  • W3CおよびXPath標準に準拠したXML機能をサポートします。

  • PolarDB for MySQLの5.7および8.0は、RFC 7159およびECMA-262標準に準拠するネイティブJSONデータ型をサポートします。

次の表に、PolarDB for MySQLエンジンバージョンとMySQLコミュニティエディションの互換性を示します。

エンジンバージョン

完全対応MySQLマイナーバージョン

8.0.2

8.0.18およびそれ以前

8.0.1

8.0.13およびそれ以前

5.7

5.7.28およびそれ以前

5.6

5.6.16およびそれ以前

PolarDB for MySQL新機能のSQL構文

作成テーブル

PolarDB for MySQLがCREATE TABLEステートメントと互換性があることを確認するには、SHOW CREATE TABLEステートメント、mysqldumpツール、およびバイナリログ同期を使用して、CREATE TABLEステートメントを自動的に追加します。 以下の点にご注意ください。

  • 方法1: SHOW CREATE TABLEステートメントを実行します。 例:

    CREATE TABLE 't1' (c1 int, KEY(c1) GLOBAL) ENGINE=InnoDB PARTITION BY HASH ('c1) PARTITIONS 4;
    クエリOK、影響を受ける0行 (0.06秒)
    
    ショー作成テーブルt1;
    + ------- + ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +
    | テーブル | テーブルの作成 |
    + ------- + ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +
    | t1 | CREATE TABLE 't1' (
      'c1' int (11) DEFAULT NULL、
      キー 'c1' ('c1') /*! グローバル800020207 99990 * /
    ) エンジン=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
    /*!50100 PARTITION BY HASH ('c1)
    パーティー4 */ | 
  • 方法2: mysqldumpツールを使用します。 例:

    CREATE TABLE 't1' (c1 int, KEY(c1) GLOBAL) ENGINE=InnoDB PARTITION BY HASH ('c1) PARTITIONS 4;
    DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci PARTITION BY HASH ('c1);
    -結果
    mysqldump -- コンパクトテストt1
    
    include/mysqlbinlog.inc
    /*!50530 SET @ @ SESSION.PSEUDO_SLAVE_MODE=1 */;
    /*! SET @ OLD_COMPLETION_TYPE=@ @ COMPLETION_TYPE、COMPLETION_TYPE=0 */;
    DELIMITER /*!*/;
    ROLLBACK/*!*/;
    # [空]
    # original_commit_timestamp= MICROSECONDS-FROM-EPOCH (YYYY-MM-DD時間: 分: 秒TZ)
    # immediate_commit_timestamp= MICROSECONDS-FROM-EPOCH (YYYY-MM-DD時間: 分: 秒TZ)
    /*!80001 SET @ @ session.original_commit_timestamp= MICROSECONDS-FROM-EPOCH * // *!*/;
    /*!80014 SET @ @ session.original_server_version= ORIGINAL_SERVER_VERSION * // *!*/;
    /*!80014 SET @ @ session。immediate_server_version= IMMEDIATE_SERVER_VERSION * // *!*/;
    SET @ @ SESSION.GTID_NEXT= '#'/*!*/;
    'test'/*!*/; を使用します。SET TIMESTAMP=#/*!*/;
    SET @ @ session。pseudo_thread_id=#/*!*/;
    SET @ @ session.foreign_key_checks=1、@ @ session.sql_auto_is_null=0、@ @ session.unique_checks=1、@ @ session.autocommit=1/*!*/;
    SET @ @ session.sql_mode=1168113696/*!*/;
    SET @ @ session.auto_increment_increment=1, @ @ session.auto_increment_offset=1/*!*/;
    /*!\C utf8mb4 * // *!*/;
    SET @ @ session.character_set_client=, @ @ session.collation_connection=, @ @ session.collation_server=/*!*/;
    SET @ @ session.lc_time_names=0/*!*/;
    SET @ @ session.collation_database=DEFAULT/*!*/;
    /*!80011 SET @ @ session.de fault_collation_for_utf8mb4=255 * // *!*/;
    /*!80013 SET @ @ session.sql_require_primary_key=0 * // *!*/;
    テーブル 't1' の作成 (
      'c1' int (11) DEFAULT NULL、
      キー 'c1' ('c1') /*! グローバル800020207 99990 * /
    ) エンジン=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
    /*!50100 PARTITION BY HASH ('c1)
    パーティー4 * /
    /*!*/;
    ...... 
  • 方法3: バイナリログ同期を使用します。

    次の例では、バイナリログはPolarDB for MySQL 8.0.2.2.0からMySQL 8.0.27に同期されます。

    1. Data Transmission Service (DTS) を使用して、PolarDB for MySQL 8.0.2.2.0からMySQL 8.0.27にバイナリログを同期します。 詳細については、「PolarDB For MySQLクラスターからApsaraDB RDS for MySQLインスタンスへのデータの同期」をご参照ください。

    2. PolarDB for MySQL 8.0.2.2.0およびMySQL 8.0.27でバイナリログの同期結果を表示します。

      PolarDB for MySQL 8.0.2.2.0のサンプル結果:

      MySQLのサンプル結果8.0.27: MySQL前の図に示すように、PolarDB for MySQLで提供されている新機能はMySQLの結果には表示されません。

      説明

      データがPolarDB for MySQL 8.0.2.2.0からMySQL 8.0.27に同期されると、PolarDB for MySQLで提供される新機能はMySQLで使用できなくなります。

CREATE TABLE以外のDDLステートメント

CREATE TABLE以外のDDLステートメントの場合、互換性を確保するために、PolarDB For MySQLステートメントに手動でコメントを追加する必要があります。 構文:

/*!99990 800020200特別な新しいPolarDB構文SQLサポート>=バージョン2.2.0 */

例:

テーブル 't1' の作成 (
'c1' int (11) DEFAULT NULL、キー 'c1' ('c1') /*! グローバル800020207 99990 * /
) エンジン=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
/*!50100 PARTITION BY HASH ('c1)
パーティー4 */ 

エンジンバージョンの照会

次のいずれかの方法を使用して、クラスターのエンジンバージョンを照会できます。

  • PolarDBコンソールにログインします。 エンジンバージョンを照会するクラスターの 概要 ページで、カーネルバージョン パラメーターの値を確認します。1

  • show variables like "% polardb_version %"; またはshow variables like '% rds_release_date %'; ステートメントを実行して、エンジンのバージョンを照会します。

    説明
    • PolarDB For MySQL 5.6クラスターの場合、'% rds_release_date %'; ステートメントのみを使用してエンジンバージョンを照会できます。

    • PolarDB For MySQLエンジンのバージョン番号の詳細については、「エンジンバージョンのコンポーネントとその関係」をご参照ください。

エンジンバージョンのアップグレード

  • メジャーバージョンのアップグレードとマイナーバージョンの更新

    • メジャーバージョンのアップグレード

      PolarDB for MySQLは、主要なエンジンバージョンのアップグレードをサポートします。 たとえば、PolarDB For MySQL 5.6をPolarDB for MySQL 8.0にアップグレードできます。 メジャーバージョンのアップグレードの詳細については、「概要」をご参照ください。

    • マイナーバージョンの更新

      PolarDB for MySQLでは、マイナーバージョンを更新することはできません。 ただし、DTSを使用して、ソースバージョンのクラスターからターゲットバージョンのクラスターにデータを移行または同期できます。 データを移行または同期する方法の詳細については、「概要」をご参照ください。

  • 改訂バージョンのアップグレード

    リビジョンバージョンをアップグレードする方法の詳細については、「リビジョンバージョンのアップグレード」をご参照ください。