Trabajar con motores de bases de datos MySQL

Este artículo es una introducción al trabajo con motores de bases de datos en MySQL.

Para seguir algunos de los procedimientos de este artículo, debe tener acceso root al servidor.

Acerca de los motores de base de datos MySQL

Los motores de base de datos proporcionan la funcionalidad subyacente para que MySQL trabaje y procese datos.

Los dos motores de base de datos MySQL más comunes y populares son MyISAM e InnoDB. MyISAM es el motor predeterminado de MySQL para versiones anteriores a la 5.5.5, y funciona bien en la mayoría de los escenarios. Sin embargo, dependiendo de sus necesidades, hay situaciones en las que otro motor de base de datos, como InnoDB, puede ser la mejor opción. Por ejemplo, InnoDB admite transacciones, mientras que MyISAM no. InnoDB también proporciona soporte para claves foráneas, mientras que MyISAM no lo hace.

Si tiene acceso root a su servidor, tiene un control completo sobre cómo y cuándo MySQL utiliza los diversos motores de bases de datos. Puede cambiar el motor de base de datos predeterminado, cambiar el motor de base de datos de una tabla específica y mucho más.

Este artículo asume que ya sabe cómo acceder a MySQL desde la línea de comandos utilizando el programa mysql. Si no sabe cómo hacerlo, lea este artículo primero.

Determinación del motor de base de datos predeterminado

Para determinar el motor de base de datos predeterminado para su instalación, escriba el siguiente comando en el símbolo del sistema mysql>:

SHOW ENGINES;

Aparecerá una lista de motores compatibles, junto con una breve descripción y las características compatibles para cada motor. El motor de base de datos predeterminado está marcado como PREDETERMINADO en la columna Soporte.

Cambiar el motor de base de datos predeterminado

Puede cambiar el motor de base de datos predeterminado para su instalación de MySQL. Después de hacer esto, todas las tablas nuevas que cree utilizarán el nuevo motor de base de datos (a menos que establezca explícitamente el motor durante la creación de la tabla).

Para cambiar el motor de base de datos predeterminado, siga estos pasos:

  1. Use su editor de texto preferido para abrir mi.archivo cnf en su servidor. La ubicación del my.el archivo cnf depende de su distribución Linux:
    • En CentOS y Fedora, el my.el archivo cnf se encuentra en el directorio / etc.
    • En Debian y Ubuntu, el my.el archivo cnf se encuentra en el directorio/etc / mysql.
  2. En el mi.archivo cnf, localice la sección.
  3. Agregue o modifique la siguiente línea en la sección. Reemplace ENGINE con el nombre del motor que desea usar como predeterminado:

    default-storage-engine=ENGINE

    Si está habilitando el motor de base de datos InnoDB, dependiendo de su distribución Linux, es posible que tenga que deshabilitar la siguiente línea en mi.archivo cnf:

    skip-innodb

    Para hacer esto, simplemente agregue un signo de libra ( # ) al principio de la línea, de la siguiente manera:

    #skip-innodb

  4. para Guardar los cambios en el mi.archivo cnf y, a continuación, salga del editor de texto.
  5. Reinicie el servidor MySQL utilizando el comando apropiado para su distribución Linux:

    • Para CentOS y Fedora, escriba:
      service mysqld restart
    • Para Debian y Ubuntu, escriba:

      service mysql restart
  6. Para confirmar el nuevo motor de base de datos predeterminado, utilice la instrucción SQL SHOW ENGINES como se describe en la sección Determinación del motor de base de datos predeterminado.

Determinar el motor de base de datos actual de una tabla

Para determinar qué motor está utilizando actualmente una tabla de base de datos, escriba el siguiente comando en el símbolo del sistema mysql>. Reemplazar base de datos con el nombre de la base de datos que desea comprobar:

SELECT TABLE_NAME, ENGINE FROM information_schema.TABLES where TABLE_SCHEMA = 'database';

Este comando muestra una lista de cada tabla de la base de datos, junto con el motor que está utilizando cada tabla.

Cambiar el motor de base de datos de una tabla

Puede cambiar el motor de base de datos de una tabla que ya existe. Por ejemplo, la siguiente instrucción SQL muestra cómo modificar una tabla llamada MyTable para usar el motor InnoDB:

ALTER TABLE myTable ENGINE = InnoDB;

Creación de una tabla nueva con un motor de base de datos específico

Al crear una tabla en una base de datos, puede establecer explícitamente su motor de base de datos (de lo contrario, MySQL utiliza el motor de base de datos predeterminado durante la creación de la tabla). Por ejemplo, la siguiente instrucción SQL muestra cómo crear una tabla llamada MyTable que use el motor de base de datos MyISAM:

CREATE TABLE myTable ( id INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (id), data VARCHAR(20) NOT NULL ) ENGINE MyISAM;

De forma similar, para crear una tabla que use el motor de base de datos InnoDB, puede usar la siguiente instrucción SQL:

CREATE TABLE myTable ( id INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (id), data VARCHAR(20) NOT NULL ) ENGINE InnoDB;

Deja una respuesta

Tu dirección de correo electrónico no será publicada.