sql >> Base de Datos >  >> RDS >> Mysql

Conversión de MyISAM a InnoDB. ¿Beneficioso? ¿Consecuencias?

Sin perjuicio de los beneficios / inconvenientes de su uso, que se discuten en otros hilos ( MyISAM versus InnoDB ), la migración es un proceso no trivial.

Considere

  • Probar funcionalmente todos los componentes que hablan con la base de datos si es posible:los motores de diferencia tienen semántica diferente
  • Ejecute tantas pruebas de rendimiento como pueda:algunas cosas pueden mejorar, otras pueden ser mucho peores. Un ejemplo bien conocido es SELECT COUNT(*) en una tabla grande.
  • Comprobar que todo su código manejará los bloqueos sin problemas:puede obtenerlos sin el uso explícito de transacciones
  • Calcule cuánto uso de espacio obtendrá al convertir:pruébelo en un entorno que no sea de producción.

Sin duda necesitará cambiar cosas en una gran plataforma de software; esto está bien, pero dado que (con suerte) tiene mucha cobertura de prueba automática, el cambio debería ser aceptable.

PD:si "Algo está comenzando a gravar la CPU", entonces debe a) averiguar qué, en un entorno que no sea de producción, b) probar varias opciones para reducirlo, en un entorno que no sea de producción. No debe comenzar a hacer cosas importantes a ciegas, como cambiar los motores de la base de datos, cuando no ha analizado completamente el problema.

Todas las pruebas de rendimiento deben realizarse en un entorno que no sea de producción, con datos similares a los de producción y en hardware de nivel de producción. De lo contrario, es difícil interpretar los resultados correctamente.