Logo de Código Facilito
  • Inicio
  • Replays
  • Iniciar sesión
  • Crear cuenta
  • Explorar cursos
  • Bootcamps
  • Precios
  • Blog

¡Califica el Curso Profesional de Base de Datos!

Selecciona la calificación de 1 a 5 estrellas

Reporta un error

Curso Curso Profesional de Base de Datos

Video Motores de almacenamiento en MySQL

Tipo de error

Algo salió mal al cargar el vídeo

El vídeo no pudo cargarse, hemos enviado un reporte al equipo de desarrollo, para poder solucionarlo a la brevedad.

Mientras solucionamos el problema, intenta lo siguiente para solucionar el error:

  • Recarga la página
  • Intenta reiniciar tu navegador y luego vuelve a reproducir el vídeo
  • Vacía el caché de tu navegador
  • Intenta reproducir con las extensiones del navegador deshabilitadas
  • Intenta con un navegador distinto
  • Si el problema persiste contáctanos en Discord
home Ir al inicio report_problem Reportar falla star Valorar curso

Afortunadamente para nosotros, los administradores de base de datos, MySQL nos permite trabajar con diferentes motores de almacenamiento, entre los que destacan MyISAM e InnoDB.

¿Motor de almacenamiento?, ¿Qué es eso? 🤔, verás, un motor de almacenamiento se el encargado de almacenar, gestionar y recuperar toda la información de una tabla. Es por ello que es de suma importancia que nosotros conozcamos la existencia de estos motores, cuales son sus principales diferencias y en qué casos es bueno utilizar uno u otro, de esta forma que podamos garantizar un mejor performance en nuestras aplicaciones. 😉

Para que nosotros conozcamos que motor de almacenamiento podemos utilizar basta con ejecutar la siguiente sentencia en nuestra terminal.

SHOW ENGINES;

Obtendremos el siguiente listado.

  • InnoDB
  • MRG_MYISAM
  • MEMORY
  • BLACKHOLE
  • MyISAM
  • CSV
  • ARCHIVE
  • PERFORMANCE_SCHEMA
  • FEDERATED

En esta ocasión nos centraremos en explicar los dos motores de almacenamiento más populares, me refiero a MyISAM e InnoDB.

MyISAM es el motor por default de MySQL. Una de las principales ventajas de este motor es la velocidad al momento de recuperar información. MyISAM es una excelente opción cuando las sentencias predominantes en nuestra aplicación sean de consultas. Esta es una de las razones por las cuales MyISAM es tan popular en aplicaciones web.

Si tu aplicación necesita realizar búsquedas full-text MyISAM es un mejor opcion.

La principal desventajas de MyISAM recae en la ausencia de atomocidad, ya que no se comprueba la integridad referencial de los datos. Se gana tiempo en la inserción, sí, pero perdemos confiabilidad en los datos.

Por otro lado tenemos el motor de almacenamiento InnoDB. La principal ventaja de este motor recae en la seguridad de las operaciones. InnoDB permite la ejecución de transacciones, esto nos garantiza que los datos se persisten de forma correcta y si existe algún error podamos revertir todos los cambios realizados.

Algo interesante a mencionar sobre InnoDB es que este motor realiza un bloqueo total sobre un tabla cuando es ejecutada una se las siguientes sentencias.

  • Select
  • Insert
  • Update
  • Delete

Si deseamos trabajar con transacción y la integridad de los datos sea crucial nuestra mejor opción será InnoDB, por otro lado, sí lo que deseamos es una mayor rapidez al momento de obtener información será necesario utilizar MyISAM.

Gestión

Si nosotros así lo deseamos podemos cambiar el motor de almacenamiento. Existen dos formas de hacer esto. La primera, es modificar el archivo my.cnf.

[mysqld]
default-storage-engine = innodb

La segunda forma es hacerlo directamente desde nuestra sección, basta con ejecutar la siguiente sentencia.

SET storage_engine=INNODB;

En ambos casos modificamos el motor de almacenamiento de MyISAM a InnoDB.


Si nosotros deseamos conocer qué motor de almacenamiento utiliza una tabla en particular, podemos hacerlo ejecutando la siguiente sentencia.

SHOW TABLE STATUS WHERE `Name` = 'tabla' \G;

Si deseamos crear una tabla utilizando un motor en particular, debemos seguir la siguiente estructura.

CREATE TABLE tabla_innodb (id int, value int) ENGINE=INNODB;
CREATE TABLE tabla_myisam (id int, value int) ENGINE=MYISAM;
CREATE TABLE tabla_default (id int, value int);
  • check_circle_outline
    Módulo 1 | 8 clases

    Introdución

    expand_more
  • check_circle_outline
    Módulo 2 | 3 clases

    Servidor de base de datos

    expand_more
  • check_circle_outline
    Módulo 3 | 10 clases

    Base de datos y tablas

    expand_more
  • check_circle_outline
    Módulo 4 | 8 clases

    Restricciones

    expand_more
  • check_circle_outline
    Módulo 5 | 2 clases

    Modificar tablas

    expand_more
  • check_circle_outline
    Módulo 6 | 12 clases

    Sentencias basicas

    expand_more
  • check_circle_outline
    Módulo 7 | 8 clases

    Funciones

    expand_more
  • check_circle_outline
    Módulo 8 | 12 clases

    Sentencias avanzadas

    expand_more
  • check_circle_outline
    Módulo 9 | 7 clases

    Joins

    expand_more
  • check_circle_outline
    Módulo 10 | 4 clases

    Vistas

    expand_more
  • check_circle_outline
    Módulo 11 | 7 clases

    Procedimientos

    expand_more
  • check_circle_outline
    Módulo 12 | 4 clases

    Transacciones

    expand_more
  • check_circle_outline
    Módulo 13 | 5 clases

    Extras

    expand_more
    • done_all

      Clase 1

      Motores de almacenamiento en MySQL

    • done_all

      Clase 2

      Eventos MySQL

    • done_all

      Clase 3

      Cursores MySQL

    • done_all

      Clase 4

      Respaldo de información

    • done_all

      Clase 5

      Asignar permisos a usuarios MySQL

  • check_circle_outline
    Módulo 14 | 5 clases

    Triggers

    expand_more
  • check_circle_outline
    Módulo 15.-

    Examen del curso

    expand_more
    • done_all

      Examen

      Examen final del curso

Motores de almacenamiento en MySQL

arrow_back Siguiente arrow_forward
Curso Profesional de Base de Datos