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

Motor preferido de MySQL:MyISAM o InnoDB

Paso la mayor parte de mi tiempo trabajando con mis clientes en la comprobación completa del estado del rendimiento de la base de datos . La mejor parte del compromiso del control de salud es que puedo conocer a muchas personas nuevas y compartir muchas historias diferentes. Recientemente, uno de los DBA que también trabaja en MySQL junto con SQL Server me preguntó cuál es mi motor preferido para MySQL:MyISAM o InnoDB.

Creo que es una pregunta muy interesante para hacer en el año 2019, ya que creo que el propio equipo de MySQL ya tomó la decisión de esta desde la versión 5.5 de MySQL. Ya han seleccionado InnoDB como su motor predeterminado desde MySQL 5.5.

Estas son mis cinco razones principales para optar por InnoDB

  • InnoDB admite el bloqueo a nivel de fila, que es fundamental para el rendimiento. MyISAM solo admite el bloqueo a nivel de tabla, lo que crea un gran cuello de botella cuando su tabla se actualiza con frecuencia.
  • InnoDB implementa transacciones, que son críticas en la aplicación de base de datos de misión crítica que está involucrada en la banca y el comercio electrónico.
  • InnoDB admite restricciones de relación como claves externas, lo que lo hace más compatible con bases de datos relacionales que MyISAM, que no admite ninguna.
  • InnoDB admite transacciones ACID (Atomicidad, Consistencia, Aislamiento, Durabilidad), lo que lo hace totalmente compatible con las reglas RDBMS que MyISAM no admite.
  • InnoDB administra los índices y la tabla base con la ayuda del administrador de almacenamiento interno con un grupo de búfer de memoria, que es extremadamente eficiente en términos de rendimiento. MyISAM utiliza archivos de disco principalmente para la tabla base, que no está optimizada para el rendimiento.

Mi sugerencia es que si tiene que hacer la selección del motor, deje que su MySQL decida el motor predeterminado o seleccione InnoDB que tiene las últimas funciones de RDBMS.

Actualmente estoy escribiendo un documento técnico sobre este tema, una vez que se publique el documento técnico, lo compartiré con todos ustedes para que puedan leerlo al respecto.