Saltar al contenido

¿Cómo actualizo una versión del motor de base de datos de Amazon RDS para MySQL y minimizo el tiempo de inactividad?

5 minutos de lectura
0

Quiero actualizar una versión del motor de base de datos de Amazon Relational Database Service (Amazon RDS) para MySQL con un tiempo de inactividad mínimo.

Resolución

Nota: Si se muestran errores al ejecutar comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), consulta Solución de errores de la AWS CLI. Además, asegúrate de utilizar la versión más reciente de la AWS CLI.

Actualización a una versión del motor de base de datos de Amazon RDS para MySQL

Para actualizar un motor de base de datos de Amazon RDS a una versión principal, debes usar manualmente la consola de administración de AWS, la AWS CLI o la API de RDS. Para obtener más información, consulta Actualización manual de la versión del motor.

Para actualizar automáticamente un motor de base de datos de Amazon RDS a una versión secundaria, consulta Actualización automática a la versión secundaria del motor.

Prácticas recomendadas para minimizar el tiempo de inactividad DE las actualizaciones del motor de base de datos de Amazon RDS para MySQL

**Estimación del tiempo de actualización **

El tiempo de actualización depende del tipo de actualización, los datos y los recursos disponibles. Para estimar el tiempo de actualización, prueba las actualizaciones en instancias de base de datos de prueba independientes. Para lanzar instancias de base de datos de prueba para la actualización principal o secundaria, utiliza una restauración de instantánea o una réplica de lectura. Para obtener más información, consulta Actualizaciones del motor de base de datos de RDS para MySQL.

Para minimizar el tiempo de inactividad de la actualización, usa el despliegue azul-verde para las actualizaciones de bases de datos. Un despliegue azul-verde crea un entorno de ensayo que copia el entorno de producción. Puedes actualizar tus instancias de base de datos de Amazon RDS en un entorno seguro sin que esto afecte a las cargas de trabajo de producción. A continuación, puedes cambiar los entornos después de probarlos.

Impacto de la copia de seguridad de base de datos

Cuando tienes las copias de seguridad activadas, Amazon RDS toma una instantánea de la versión anterior de la instancia de base de datos para todas las actualizaciones de la versión. Si Amazon RDS no encuentra ninguna copia de seguridad reciente, Amazon RDS realizará una instantánea completa durante el proceso de actualización. Ten en cuenta que el tamaño de los cambios afectará al tiempo de actualización. Tu instancia de base de datos puede seguir aceptando tráfico cuando Amazon RDS tome la instantánea. Una vez finalizada la copia de seguridad, la instancia de base de datos se cierra. A continuación, MySQL ejecuta la nueva versión del motor en una red desactivada para evitar cualquier conexión remota.

Impacto de un apagado lento

Para usar un apagado lento, Amazon RDS establece el valor del parámetro innodb_fast_shutdown en 0. En un apagado lento, Amazon RDS fusiona el búfer de cambios y realiza una purga completa de las filas eliminadas. Un apagado lento puede tardar unos minutos o varias horas en función de la cantidad de datos que se recuperen. El apagado lento de una base de datos con un búfer de cambios grande o una lista de historial extensa puede llevar más tiempo. Para obtener más información, consulta slow shutdown, innodb_fast_shutdown, change buffer y purge en el sitio web de MySQL.

Conversión de tablas de sistemas y usuarios a una nueva versión

Para convertir las tablas del sistema y de usuario a una nueva versión, el elemento binario mysql_upgrade se ejecuta en la base de datos de MySQL. Según el estado de la tabla, es posible que tengas que crear una tabla para que se ajuste a una nueva versión. El elemento binario mysql_upgrade actualiza los metadatos de la tabla y muestra que la base de datos se actualizó. Si tienes un número mayor de tablas, es posible que Amazon RDS para MySQL tarde más en completar la actualización de la versión principal. Para obtener más información, consulta mysql_upgrade — check and upgrade MySQL tables (mysql_upgrade: comprobación y actualización de las tablas de MySQL) en el sitio web de MySQL.

Consideraciones para las actualizaciones de MySQL

Durante las actualizaciones importantes de la versión 8.0 a la 8.4, Amazon RDS para MySQL reconstruye algunas de tus tablas. Según la cantidad de datos de las tablas, la reconstrucción puede tardar varias horas o varios días en completarse.

Las incompatibilidades entre las versiones principales de MySQL pueden causar problemas al actualizar. Para una actualización exitosa, se recomienda revisar las consideraciones para las actualizaciones de MySQL. Al iniciar una actualización de MySQL 5.7 a 8.0, Amazon RDS ejecuta automáticamente comprobaciones previas para detectar incompatibilidades. Para obtener más información, consulta Upgrading MySQL (Actualización de MySQL) en el sitio web de MySQL.

Creación de un plan de reversión

Para actualizar desde MySQL 8.0, Amazon RDS ejecuta comprobaciones previas para confirmar que hay suficiente espacio de almacenamiento para reconstruir las tablas. Amazon RDS también confirma que no haya tablas huérfanas. Amazon RDS no realiza comprobaciones previas para detectar actualizaciones a versiones anteriores a MySQL 5.7. Se recomienda tener un plan en caso de que la actualización no se realice correctamente y se revierta en caso de que surjan errores importantes de actualización de la versión.

Comprobación para ver si las tablas tienen problemas

Para comprobar si las tablas tienen problemas, se recomienda realizar una comprobación de mysqlcheck. Se recomienda probar las operaciones de mantenimiento de las tablas en una instantánea restaurada. Para obtener más información, consulta mysqlcheck — a table maintenance program (mysqlcheck: programa de mantenimiento de tablas) en el sitio web de MySQL.

Información relacionada

Actualización de una versión del motor de instancias de base de datos

Prácticas recomendadas para actualizar Amazon RDS para MySQL y Amazon RDS para MariaDB

Versiones de MySQL en Amazon RDS

OFICIAL DE AWSActualizada hace un año