Compartir a través de


Procedimientos recomendados para las operaciones de servidor en Azure Database for MySQL: servidor flexible

Obtenga información sobre los procedimientos recomendados para trabajar con Azure Database for MySQL: servidor flexible. A medida que agregamos nuevas funcionalidades a la plataforma, seguiremos centrándonos en perfeccionar los procedimientos recomendados que se detallan en esta sección.

Directrices operativas de Azure Database for MySQL: servidor flexible

A continuación, se muestran las instrucciones operativas que deben seguirse al trabajar con Azure Database for MySQL: servidor flexible para mejorar el rendimiento de la base de datos:

  • Ubicación conjunta: para reducir la latencia de la red, coloque el cliente y el servidor de base de datos en la misma región de Azure.

  • Supervisión del uso de la memoria, la CPU y el almacenamiento: puede configurar alertas para recibir una notificación cuando cambien los patrones de uso o cuando se alcance la capacidad de la implementación, de modo que pueda mantener el rendimiento y la disponibilidad del sistema.

  • Registros acelerados para mejorar el rendimiento: la habilitación de la característica de registros acelerados optimiza las operaciones relacionadas con el registro transaccional, lo que aumenta el rendimiento del servidor. Esta característica, disponible sin costo adicional, es una adición significativa a los procedimientos recomendados operativos para los usuarios del nivel de servicio Crítico para la empresa.

  • Escalado vertical de la instancia de base de datos: puede escalar verticalmente al aproximarse a los límites de capacidad de almacenamiento. Debe tener algún búfer en el almacenamiento y la memoria para admitir los aumentos imprevistos por parte de las aplicaciones. También puede habilitar la característica de crecimiento automático del almacenamiento para que el servicio escale automáticamente el almacenamiento cuando se aproxime a los límites del almacenamiento.

  • Configuración de copias de seguridad: habilite las copias de seguridad con redundancia geográfica o locales según el requisito del negocio. Además, puede modificar el período de retención durante el cual las copias de seguridad estarán disponibles para la continuidad empresarial.

  • Optimización de la capacidad de E/S con IOPS de escalabilidad automática: si la carga de trabajo de la base de datos requiere más E/S de las que ha aprovisionado, la recuperación u otras operaciones transaccionales para la base de datos serán lentas. Para aumentar la capacidad de E/S de una instancia de servidor, realice alguna de las acciones siguientes:

    • Uso de IOPS de escalabilidad automática: IOPS de escalabilidad automática elimina la necesidad de aprovisionar previamente un número específico de operaciones de E/S por segundo. En su lugar, permite que el servidor ajuste automáticamente las IOPS en función de los requisitos de carga de trabajo1. Esto significa que el servidor puede escalar o reducir verticalmente las IOPS automáticamente en función de las necesidades de carga de trabajo.

    • Azure Database for MySQL: servidor flexible proporciona escalado por IOPS a razón de tres IOPS por GB de almacenamiento aprovisionado. Aumente el almacenamiento aprovisionado para escalar el IOPS para obtener un mejor rendimiento.

    • Si ya usa el almacenamiento de IOPS aprovisionado, aprovisione más capacidad de rendimiento.

  • Escalado de proceso: la carga de trabajo de la base de datos también se puede limitar debido a la CPU o la memoria y esto puede tener un impacto importante en el procesamiento de transacciones. El proceso (plan de tarifa) se puede escalar o reducir verticalmente solo entre los niveles de servicio De uso general u Optimizado para memoria.

  • Prueba para la conmutación por error: pruebe manualmente la conmutación por error de la instancia del servidor para entender cuánto tiempo tarda el proceso en el caso de uso en cuestión y para asegurarse de que la aplicación que accede a la instancia del servidor puede conectarse automáticamente a la nueva instancia del servidor después de la conmutación por error.

  • Uso de clave principal: asegúrese de que las tablas tengan una clave principal o única mientras trabaja en la instancia de Azure Database for MySQL: servidor flexible. Esto ayuda enormemente a la creación de copias de seguridad y réplicas, entre otros, y mejora el rendimiento.

  • Configuración del valor TTL: si la aplicación cliente almacena en caché los datos del servicio de nombres de dominio (DNS) de las instancias de servidor, establezca un valor de período de vida (TTL) de menos de 30 segundos. Como que la dirección IP subyacente de una instancia de servidor puede cambiar después de una conmutación por error, el almacenamiento en caché de los datos del DNS durante un tiempo prolongado puede provocar errores de conexión si la aplicación intenta conectarse a una dirección IP que ya no está en servicio.

  • Use la agrupación de conexiones para evitar alcanzar los límites máximos de conexión y use la lógica de reintento para evitar problemas de conexión intermitentes.

  • Si usa la réplica, use ProxySQL para equilibrar la carga entre el servidor principal y el servidor de la réplica secundaria legible. Vea aquí los pasos de la configuración.

  • Al aprovisionar el recurso, asegúrese de haber habilitado el crecimiento automático para la instancia de Azure Database for MySQL: servidor flexible. Esto no agrega ningún costo adicional y protege la base de datos de cualquier cuello de botella de almacenamiento que pueda encontrarse.

Usar InnoDB con el servidor flexible de Azure Database for MySQL

  • Si usa la característica ibdata1, que es un espacio de tabla del sistema, el archivo de datos no se puede reducir ni purgar quitando los datos de la tabla ni moviendo la tabla a tablespaces de archivo por tabla.

  • En el caso de una base de datos con un tamaño superior a 1 TB, debe crear la tabla en tablespace innodb_file_per_table. En el caso de una tabla única con un tamaño superior a 1 TB, debe crear la tabla de particiones.

  • En el caso de un servidor con una gran cantidad de tablespace, el inicio del motor será muy lento debido al recorrido de espacio de tabla secuencial durante el inicio o la conmutación por error de Azure Database for MySQL: servidor flexible.

  • Establezca innodb_file_per_table = ON antes de crear una tabla si el número total de tablas es inferior a 500.

  • Si tiene más de 500 tablas en una base de datos, revise el tamaño de cada tabla individual. En el caso de una tabla de tamaño grande, de todos modos debe considerar usar el espacio de tabla archivo por tabla para evitar que el archivo del espacio de tabla del sistema alcance el límite máximo de almacenamiento.

Nota

En el caso de las tablas con un tamaño inferior a 5 GB, considere la posibilidad de usar el espacio de tabla del sistema.

CREATE TABLE tbl_name ... *TABLESPACE* = *innodb_system*;
  • Cree particiones de la tabla al crear la tabla si tiene una tabla grande que pudiera llegar a tener más de 1 TB.

  • Use varias instancias de Azure Database for MySQL: servidor flexible y propague las tablas entre esos servidores. Evite colocar demasiadas tablas en un solo servidor si tiene alrededor de 10 000 tablas o más.