MyISAM vs InnoDB

Por el 12 de Noviembre de 2007

en: Sin categoría

MySql soporta distintas tecnologías de almacenamiento de datos, entre estas destacan MyISAM e InnoDB, el primero de ellos (MyISAM) es el utilizado por defecto pero en la mayoría de los casos podremos cambiarlo cuando queramos.

Documentación de MySQL sobre InnoDB
Documentación de MySQL sobre MyISAM

InnoDB es una tecnología de almacenamiento de datos de fuente abierta para MySQL, incluido como formato de tabla estándar en todas las distribuciones de MySQL AB a partir de las versiones 4.0. Su característica principal es que soporta transacciones de tipo ACID y bloqueo de registros e integridad referencial. InnoDB ofrece una fiabilidad y consistencia muy superior a MyISAM, la anterior tecnología de tablas de MySQL, si bien el mejor rendimiento de uno u otro formato dependerá de la aplicación específica.

InnoDB (Wikipedia)

MyISAM es la tecnología de almacenamiento de datos usada por defecto por el sistema administrador de bases de datos relacionales MySQL. Este tipo de tablas están basadas en el formato ISAM pero con nuevas extensiones. En las últimas versiones de Mysql, el motor InnoDB está empezando a reemplazar a este tipo de tablas por su capacidad de ejecutar transacciones de tipo ACID y bloqueo de registros e integridad referencial.

MyISAM (Wikipedia)

Ventajas: MyISAM vs InnoDB

InnoDB

  • Soporte de transacciones
  • Bloqueo de registros
  • Nos permite tener las características ACID (Atomicity, Consistency, Isolation and Durability: Atomicidad, Consistencia, Aislamiento y Durabilidad en español), garantizando la integridad de nuestras tablas.
  • Es probable que si nuestra aplicación hace un uso elevado de INSERT y UPDATE notemos un aumento de rendimiento con respecto a MyISAM.

MyISAM

  • Mayor velocidad en general a la hora de recuperar datos.
  • Recomendable para aplicaciones en las que dominan las sentencias SELECT ante los INSERT / UPDATE.
  • Ausencia de características de atomicidad ya que no tiene que hacer comprobaciones de la integridad referencial, ni bloquear las tablas para realizar las operaciones, esto nos lleva como los anteriores puntos a una mayor velocidad.

La elección es un tema delicado ya que hay que conseguir la mejor relación de calidad acorde con nuestra aplicación, obviamente si necesitamos transacciones, claves foráneas y bloqueos tendremos que escoger InnoDB por el contrario escogeremos MyISAM en aquellos casos en los que predominen las consultas SELECT a la base de datos (un gran número de páginas webs).

  • Entradas relacionadas:
  • No hay coincidencias

7 Respuestas a MyISAM vs InnoDB

Avatar

orte

5 de Marzo de 2008 a las 9:04 pm

comopuedoimigrarlo se que existe un programar

Avatar

mashter

13 de Marzo de 2008 a las 4:33 am

no recuerdo la referencia, pero un modo que recomendaban era expotar el sql; borrar la BD actual, en el sql respaldado renombar al tipo deseado y volver a importar el sql

Avatar

Posicionamiento valencia

13 de Mayo de 2008 a las 6:59 am

Otra desventaja de las myisam es no puedes utilizar indices fulltext que sirven para realizar búsquedas con lenguaje natural mediante MATCH ….. AGAINST

Avatar

Anónimo

9 de Septiembre de 2008 a las 12:04 pm

en la ventana de command teclea: mysqldump –user=[usuario] -p [nombre_de_la BD] > nombre_de_salida.sql
Luego el archivo te queda el la carpeta del usuario correspondiente en C:\Documents and Settings\

Avatar

Anónimo

30 de Septiembre de 2008 a las 7:00 pm

ok por fin entiendo

Avatar

STUPIDO

17 de Octubre de 2009 a las 12:14 am

oooooOOOOOOOooooOOOOoooooOOOOoooo o____0y

Avatar

darcon3371

4 de Noviembre de 2009 a las 5:34 pm

Muy Bueno tu articulo, gracias por compartir el conocimiento

Dejar un comentario

Patrocinadores

¿Interesado en patrocinar TuFunción?

Suscripción

Primera División