Todos los productos
Search
Centro de documentos

PolarDB:Versiones del motor 5.6, 5.7 y 8.0

Última actualización: Sep 07, 2026

El motor de base de datos es el componente central de una base de datos. PolarDB for MySQL ofrece tres versiones principales del motor: 5.6, 5.7 y 8.0.

La figura que se muestra a continuación presenta la posición del motor de base de datos de PolarDB for MySQL en la arquitectura de PolarDB for MySQL.1

Estructura de la versión del motor

El número de versión del motor de PolarDB for MySQL consta de una versión principal, una versión secundaria y una revisión. La figura que se muestra a continuación ilustra esta estructura con PolarDB for MySQL 8.0 como ejemplo:版本号说明

La versión principal es el identificador principal de una versión del motor de PolarDB for MySQL. Una versión principal normalmente incluye una o más versiones secundarias. Por ejemplo, la versión principal 5.6 contiene solo la versión secundaria 5.6.16, mientras que la versión principal 8.0 incluye tanto la 8.0.1 como la 8.0.2. Las distintas versiones secundarias pueden tener variaciones importantes de funciones. Seleccione la versión secundaria que mejor se adapte a sus requisitos empresariales antes de adquirir un clúster. Una versión secundaria también puede tener varias revisiones. Las revisiones introducen optimizaciones, mejoras o funciones nuevas. Las versiones secundarias y las revisiones también incluyen mejoras de seguridad y rendimiento.

Nota

Las versiones del motor de PolarDB for MySQL son compatibles con versiones anteriores. Las versiones principales más recientes incluyen todas las funciones de las versiones anteriores, por lo que no es necesario que modifique sus aplicaciones después de una actualización. Para obtener más información sobre cómo actualizar la versión del motor, consulte Upgrade an engine version.

Notas de la versión

Cada versión del motor tiene notas de la versión que enumeran sus funciones nuevas, mejoras y correcciones de bugs. Para obtener más información, consulte los temas que se indican a continuación:

Compatibilidad de la versión del motor

El motor de PolarDB for MySQL es compatible con lo que se indica a continuación:

  • El estándar SQL ANSI/ISO. PolarDB for MySQL permite cambiar el modo de compatibilidad de SQL a ANSI. Para ello, establezca el parámetro de clúster sql_mode en ANSI. Para obtener más información sobre cómo modificar los parámetros del clúster, consulte Set cluster and node parameters.

  • Las versiones de ODBC de la 0 a la 3.51.

  • Las funciones XML que cumplen los estándares W3C y XPath.

  • PolarDB for MySQL 5.7 y 8.0 admiten el tipo de datos JSON nativo tal como se define en RFC 7159 y ECMA-262.

La tabla que se muestra a continuación indica la compatibilidad de las versiones del motor de PolarDB for MySQL con las versiones comunitarias de MySQL.

Versión del motor

Versión de MySQL compatible

8.0.2

8.0.18 y anteriores

8.0.1

8.0.13 y anteriores

5.7

5.7.28 y anteriores

5.6

5.6.16 y anteriores

Sintaxis SQL para funciones nuevas

CREATE TABLE

Para la sintaxis de CREATE TABLE, la compatibilidad se garantiza automáticamente al añadir sintaxis específica durante operaciones como SHOW CREATE TABLE, al usar la herramienta mysqldump o al sincronizar el registro binario. Los ejemplos que se muestran a continuación proporcionan más detalles:

  • La sintaxis obligatoria de compatibilidad se incluye automáticamente en la salida de SHOW CREATE TABLE. Ejemplo:

    CREATE TABLE `t1` (c1 int, KEY(c1) GLOBAL) ENGINE=InnoDB PARTITION BY HASH (`c1`) PARTITIONS 4;
    Query OK, 0 rows affected (0.06 sec)
    SHOW CREATE TABLE t1;
    +-------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | Table | Create Table                                                                                                                                                                                                         |
    +-------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | t1    | CREATE TABLE `t1` (
      `c1` int(11) DEFAULT NULL,
      KEY `c1` (`c1`) /*!99990 800020207 GLOBAL */
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
    /*!50100 PARTITION BY HASH (`c1`)
    PARTITIONS 4 */ |
  • La herramienta mysqldump incluye automáticamente la sintaxis obligatoria de compatibilidad en su salida. Ejemplo:

    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`);
    --result
    mysqldump --compact test t1
    include/mysqlbinlog.inc
    /*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
    /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
    DELIMITER /*!*/;
    ROLLBACK/*!*/;
    # [empty]
    # original_commit_timestamp= MICROSECONDS-FROM-EPOCH (YYYY-MM-DD HOURS:MINUTES:SECONDS TZ)
    # immediate_commit_timestamp= MICROSECONDS-FROM-EPOCH (YYYY-MM-DD HOURS:MINUTES:SECONDS 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= '#'/*!*/;
    use `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=255,@@session.collation_connection=255,@@session.collation_server=255/*!*/;
    SET @@session.lc_time_names=0/*!*/;
    SET @@session.collation_database=DEFAULT/*!*/;
    /*!80011 SET @@session.default_collation_for_utf8mb4=255*//*!*/;
    /*!80013 SET @@session.sql_require_primary_key=0*//*!*/;
    CREATE TABLE `t1` (
      `c1` int(11) DEFAULT NULL,
      KEY `c1` (`c1`) /*!99990 800020207 GLOBAL */
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
    /*!50100 PARTITION BY HASH (`c1`)
    PARTITIONS 4 */
    /*!*/;
  • La sintaxis obligatoria de compatibilidad se añade automáticamente durante la sincronización del registro binario.

    Este ejemplo muestra la sincronización del registro binario desde PolarDB for MySQL 8.0.2.2.0 a MySQL 8.0.27:

    1. Utilice Data Transmission Service (DTS) para sincronizar el registro binario de PolarDB for MySQL a MySQL. Para obtener más información, consulte Synchronize data from PolarDB for MySQL to ApsaraDB RDS for MySQL.

    2. Compruebe los resultados de la sincronización del registro binario en PolarDB for MySQL 8.0.2.2.0 y MySQL.

      Resultado en PolarDB for MySQL:

      root:test> show create table t6;
      +-------+--------------------------------------------------------------+
      | Table | Create Table                                                 |
      +-------+--------------------------------------------------------------+
      | t6    | CREATE TABLE `t6` (
        `a` int(11) DEFAULT NULL,
        `b` int(11) DEFAULT NULL
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
      /*!99990 800020200 PARTITION BY HASH (`a`)
      SUBPARTITION BY LIST (`b`)
      (PARTITION p0
       (SUBPARTITION s0 VALUES IN (1,2,3,4,5) ENGINE = InnoDB,
        SUBPARTITION s1 VALUES IN (6,7,8,9,10) ENGINE = InnoDB),
       PARTITION p1
       (SUBPARTITION s2 VALUES IN (1,2,3,4,5) ENGINE = InnoDB,
        SUBPARTITION s3 VALUES IN (6,7,8,9,10) ENGINE = InnoDB)) */ |
      +-------+--------------------------------------------------------------+
      1 row in set (4.72 sec)

      Resultado en MySQL:

      root:test> show create table t6;
      +-------+------------------------------------------------------------+
      | Table | Create Table                                               |
      +-------+------------------------------------------------------------+
      | t6    | CREATE TABLE `t6` (
        `a` int DEFAULT NULL,
        `b` int DEFAULT NULL
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci |
      +-------+------------------------------------------------------------+
      1 row in set (0.00 sec)

      Como se muestra en la salida, el resultado en MySQL no incluye las funciones nuevas de PolarDB for MySQL.

      Nota

      Después de la sincronización de datos de PolarDB for MySQL a MySQL, las funciones nuevas específicas de PolarDB for MySQL no están disponibles.

Otras operaciones DDL

Para operaciones DDL distintas de CREATE TABLE, debe añadir manualmente comentarios de compatibilidad para la sintaxis de PolarDB for MySQL. Utilice el formato que se muestra a continuación:

/*!99990 800020200 Special new PolarDB Syntax SQL supported >= version 2.2.0 */

Ejemplo:

CREATE TABLE `t1` (
`c1` int(11) DEFAULT NULL,
KEY `c1` (`c1`) /*!99990 800020207 GLOBAL */
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
/*!50100 PARTITION BY HASH (`c1`)
PARTITIONS 4 */

Consultar la versión del motor

Para consultar la versión del motor de su clúster, utilice uno de los métodos que se indican a continuación:

  • Inicie sesión en la consola de PolarDB. En la página Basic Information de su clúster, consulte Kernel Version.

  • Como alternativa, ejecute el comando show variables like "%polardb_version%"; o el comando show variables like '%rds_release_date%'; para obtener el número de versión.

    Nota
    • Para los clústeres de PolarDB for MySQL 5.6, solo puede usar el comando show variables like '%rds_release_date%'; para obtener el número de versión.

    • Para obtener una descripción detallada del número de versión del motor de PolarDB for MySQL, consulte How engine versions are structured.

Actualización de la versión del motor

  • Actualizaciones de las versiones principales y secundarias

    • Actualización de la versión principal

      La función major version upgrade permite actualizar, por ejemplo, de PolarDB for MySQL 5.6 a PolarDB for MySQL 8.0.

    • Actualización de la versión secundaria

      PolarDB for MySQL actualmente no admite actualizaciones de versiones secundarias. Sin embargo, puede usar DTS para migrar o sincronizar datos de la versión de origen a un clúster de la versión de destino para completar la actualización. Para obtener más información sobre cómo migrar o sincronizar datos, consulte Data migration solutions overview.

  • Actualización de la revisión

    Para obtener información sobre cómo actualizar una revisión, consulte Upgrade a revision.