Diferencia entre revisiones de «Mysql Motores de bases de datos»

De MediaWiki
Ir a la navegación Ir a la búsqueda
Línea 27: Línea 27:
 
* '''A partir de la versión Mysql 5.7''' el motor por defecto cuando se crean las tablas es INNODB.
 
* '''A partir de la versión Mysql 5.7''' el motor por defecto cuando se crean las tablas es INNODB.
 
* Además la base de datos Mysql deja de ser MyIsam y pasa a ser Innodb.
 
* Además la base de datos Mysql deja de ser MyIsam y pasa a ser Innodb.
−
 
−
 
−
* Para ver cuales son los motores que puede soportar el servidor Mysql (algunos pueden estar desactivados o no compilados), disponemos de la orden SQL: '''SHOW ENGINES'''.
 
  
  
Línea 36: Línea 33:
 
:* [https://dev.mysql.com/doc/refman/5.7/en/innodb-storage-engine.html Motor INNODB].
 
:* [https://dev.mysql.com/doc/refman/5.7/en/innodb-storage-engine.html Motor INNODB].
 
:* [https://dev.mysql.com/doc/refman/5.7/en/mysql-cluster.html Motor NDB].
 
:* [https://dev.mysql.com/doc/refman/5.7/en/mysql-cluster.html Motor NDB].
 +
 +
 +
==Órdenes SQL relacionadas con el manejo de los motores==
 +
 +
* Para ver cuales son los motores que puede soportar el servidor Mysql (algunos pueden estar desactivados o no compilados), disponemos de la orden SQL: '''SHOW ENGINES;'''.
 +
 +
* Para crear una tabla con un motor determinado tendremos que ejecutar la orden SQL [https://dev.mysql.com/doc/refman/5.7/en/create-table.html CREATE TABLE] de la forma: '''CREATE TABLE nombre_tabla (col1 tipo1, col2 tipo2,....coln tipon) ENGINE=MYISAM;'''
 +
: Por defecto, a partir de la versión 5.7 el motor por defecto es INNODB. Anteriormente era MYISAM.
 +
 +
* Para modificar el motor de una tabla tenemos que ejecutar la orden SQL [https://dev.mysql.com/doc/refman/5.7/en/alter-table.html ALTER TABLE]: '''ALTER TABLE nombre_tabla ENGINE = MYISAM;'''
 +
 +
 +
==Variables del sistema relacionadas con los motores de bases de datos==
 +
 +
* [https://dev.mysql.com/doc/refman/5.7/en/server-options.html#option_mysqld_default-storage-engine default-storage-engine]: Determina el motor de bases de datos por defecto.
 +
* [https://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_disabled_storage_engines disabled_storage_engines]: Determina que motores de bases de datos no pueden ser utilizados.
 +
* [https://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_default_tmp_storage_engine default_tmp_storage_engine]: Determina el motor de bases de datos por defecto para <u>tablas temporales</u>.
  
 
=Motor MyISAM=
 
=Motor MyISAM=

Revisión del 14:30 20 oct 2017

Introducción

  • Lo primero que tendremos que preguntarnos leyendo el título de este punto es ¿ qué es un motor de bases de datos ?
  • Resumiendo podemos decir que un motor determina la forma física en cómo los datos son guardados en disco y además cada motor ofrece una serie de ventajas relativas a los tipos de datos que pueden guardar, tipos de índices, velocidad de acceso y soporte de diferentes características como puede ser el uso de transacciones, integridad referencial,...


  • En la imagen siguiente podemos ver en la capa más cercana al almacenamiento físico de los datos los diferentes motores (Imagen obtenida de Universidad De Gerona - Administracion De Bases De Datos Mysql 5):
Mysql motores 1.jpg
  • MYISAM Storage Engine
  • MEMORY Storage Engine
  • CSV Storage Engine
  • ARCHIVE Storage Engine
  • BLACKHOLE Storage Engine
  • MERGE Storage Engine
  • FEDERATED Storage Engine
  • EXAMPLE Storage Engine
  • INNODB Storage Engine
  • NDB Storage Engine
  • A partir de la versión Mysql 5.7 el motor por defecto cuando se crean las tablas es INNODB.
  • Además la base de datos Mysql deja de ser MyIsam y pasa a ser Innodb.


  • Más información:


Órdenes SQL relacionadas con el manejo de los motores

  • Para ver cuales son los motores que puede soportar el servidor Mysql (algunos pueden estar desactivados o no compilados), disponemos de la orden SQL: SHOW ENGINES;.
  • Para crear una tabla con un motor determinado tendremos que ejecutar la orden SQL CREATE TABLE de la forma: CREATE TABLE nombre_tabla (col1 tipo1, col2 tipo2,....coln tipon) ENGINE=MYISAM;
Por defecto, a partir de la versión 5.7 el motor por defecto es INNODB. Anteriormente era MYISAM.
  • Para modificar el motor de una tabla tenemos que ejecutar la orden SQL ALTER TABLE: ALTER TABLE nombre_tabla ENGINE = MYISAM;


Variables del sistema relacionadas con los motores de bases de datos

Motor MyISAM

Motor InnoDB


-- Ángel D. Fernández González -- (2017).