GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo crear o agregar un índice en MySQL con ejemplos

Introducción

MySQL es una aplicación de base de datos que organiza los datos en tablas, que a su vez tienen valores organizados en filas y columnas. En MySQL, un índice es una estructura de datos que hace que la información sea más buscable.

Sin un índice, MySQL lee toda la tabla para encontrar la fila requerida y es muy ineficiente.

Esta guía le mostrará cómo crear un índice en MySQL utilizando CREATE INDEX declaración.

Requisitos previos

  • Una instalación MySQL existente
  • Una cuenta de usuario de MySQL con raíz o administrador privilegios
  • Acceso a una línea de comando/ventana de terminal:
    • En Linux, haga clic en Actividades> Buscar> Terminal
    • En Windows, haga clic con el botón derecho en Inicio> Línea de comandos (o Windows PowerShell)

Crear sintaxis de índice de MySQL

Un CREATE INDEX declaración en MySQL utiliza el siguiente formato:

mysql> CREATE INDEX [some_index] ON [some_table] ([some_column],[other_column]);
  • some_index – El nombre del índice
  • some_table – El nombre de la tabla con las columnas indexadas
  • some_column, other_column – Los nombres de las columnas que se indexarán

MySQL Crear Índice en Nueva Tabla

Para crear un índice al mismo tiempo que se crea la tabla en MySQL:

1. Abra una ventana de terminal e inicie sesión en el shell de MySQL.

mysql -u username -p

2. Cree y cambie a una nueva base de datos ingresando el siguiente comando:

mysql> CREATE DATABASE mytest;
Query OK, 1 row affected (0.01 sec)
mysql; USE mytest;
Database changed

3. A continuación, cree columnas en la tabla e indexelas:

mysql> CREATE TABLE example (
col1 INT PRIMARY KEY,
col2 INT NOT NULL,
col3 INT NOT NULL,
col4 VARCHAR(20),
INDEX (col2, col3)
);

El comando crea una tabla llamada example , lo completa con 4 columnas y agrega índices para la columna 2 y la columna 3.

4. A continuación, muestre una lista de los índices de la tabla:

mysql; SHOW INDEXES FROM example;

Debería ver un índice para PRIMARIO, COL2 y COL3. Aunque no se especificó PRIMARY, MySQL creó automáticamente un índice para la clave principal.

Agregar índice a la tabla MySQL existente

Las mejores prácticas de MySQL recomiendan crear un índice al mismo tiempo que se crea la tabla. Sin embargo, también se puede agregar un índice a una tabla existente. Las instrucciones a continuación explican cómo agregar un índice a una tabla MySQL existente.

1. Cree una nueva tabla ingresando el siguiente comando:

mysql> CREATE TABLE example2 (
col1 INT PRIMARY KEY,
col2 VARCHAR(20),
col3 VARCHAR(20),
col4 VARCHAR(20)
);
Query OK, 0 rows affected (0.25 sec)

2. A continuación, muestre el índice actual para example2 :

mysql> SHOW INDEXES FROM example2;

El sistema debe mostrar un solo índice para la clave principal.

3. A continuación, agregue un índice para col2 y col3 ingresando el siguiente comando:

mysql> CREATE INDEX index1 ON example2 (col2,col3);

4. Muestre los índices para example2 :

mysql> SHOW INDEXES FROM example2;

El sistema ahora debería mostrar el índice de clave principal, además de col2 y col3 enumerados en index1 .


Linux
  1. Cómo crear una base de datos en MySQL con MySQL Workbench

  2. Agregar usuario a grupo en Linux, cómo hacerlo (con ejemplos)

  3. ¿Cómo crear una máquina virtual desde cero con Virsh?

  4. Cómo crear una base de datos MySQL en cPanel

  5. ¿Cómo agregar una conexión MySQL remota en Linux?

Cómo agregar un nuevo usuario de MySQL con permisos GRANT

Cómo crear una base de datos con MySQL Database Wizard

Cómo crear una base de datos en MySQL

Cómo crear una base de datos y agregar una colección con MongoDB GUI Compass

Cómo crear un comercio electrónico con Magento

Cómo crear arañas web con Scrapy