Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2023-12-14 GMT+08:00

Configuración de la división de transacciones

Escenarios

En la mayoría de los casos, una instancia proxy de GaussDB(for MySQL) envía todas las solicitudes de transacciones al nodo principal para garantizar la corrección de la transacción. Sin embargo, en algunos marcos, todas las solicitudes se encapsulan en transacciones que no se confirman automáticamente mediante set autocommit=0. Esto provoca cargas pesadas en el nodo primario.

Restricciones

  • La versión del motor de las instancias proxy debe ser 2.3.9.5 o posterior.
  • La división de transacciones sólo está disponible para las instancias cuyo nivel de aislamiento de la traducción es READ UNCOMMITTED o READ COMMITTED. El nivel de aislamiento predeterminado es REPEATABLE READ.
  • Para habilitar la división de transacciones, el modo proxy debe establecerse en lectura/escritura.

Función

El proxy de base de datos admite la división de transacciones. Con esta característica habilitada, GaussDB(for MySQL) puede enrutar las solicitudes de lectura antes de las operaciones de escritura en una transacción para leer réplicas, reduciendo la presión del nodo primario.

La división de transacciones está deshabilitada de forma predeterminada.

Después de habilitar la división de transacciones y autocommit se establece en 0, GaussDB(for MySQL) inicia una transacción solo para solicitudes de escritura. Antes de que comience la transacción, las solicitudes de lectura se enrutan a las réplicas de lectura a través de balanceadores de carga.

Precauciones

Después de habilitar la división de transacciones, el nivel de aislamiento de transacciones solo se puede cambiar a READ-UNCOMMITTED o READ-COMMITTED. Para cambiar el nivel de aislamiento a un nivel superior, desactive la función.

Procedimiento

  1. Log in to the management console.
  2. Click in the upper left corner and select a region and a project.
  3. Click in the upper left corner of the page, choose Databases > GaussDB(for MySQL).
  4. En la página Instances, haga clic en el nombre de la instancia para ir a la página Basic Information.
  5. En el panel de navegación de la izquierda, elija Database Proxy.
  6. Haga clic en junto a Transaction Splitting.

    Figura 1 Configuración de la división de transacciones

  7. En el cuadro de diálogo que se muestra, haga clic en Yes.

    Figura 2 Habilitación de la división de transacciones

La división de transacciones sólo tiene efecto para las nuevas conexiones establecidas después de que esta función esté activada o desactivada.