Cómo reparar y optimizar bases de datos MySQL desde la terminal

Reparar y optimizar las bases de datos de MySQL desde la terminal es de lo más efectivo para llevar a cabo estas tareas tan necesarias que se dan por un cierre anormal del servidor, por depuración o por el mismo uso de datos de las aplicaciones. Contamos también con phpMyAdmin como herramienta gráfica para realizar todos estos procesos; es tan simple como seleccionar las tablas de una base da datos y darle en reparar u optimizar.

En teoría con phpMyAdmin es así, en la practica el gestor gráfico está limitado por la configuración que el servidor tiene de PHP y por lo tanto cuando tenemos tablas grandes o muy grandes las simples tareas de reparación y optimización pueden ser lentas, tediosas y con frecuencia no llevarse a cabo por agotarse el tiempo de ejecución.

Precaución: Antes de reparar las tablas de una base de datos es recomendable hacer una copia de seguridad de la misma.

Reparar y optimizar base de datos MySQL desde la terminal.

Desde la terminal Linux podemos llevar a cabo estas tareas por medio del comando mysqlcheck desglosando sus parámetros de la siguiente manera:

  • mysqlcheck – comando principal
  • -r – argumento para indicar que queremos reparar las tablas
  • -o – argumento para indicar que queremos optimizar las tablas
  • -u – argumento para indicar el usuario de la base de datos
  • -p – argumento para indicar la contraseña de la base de datos

Reparando la base de datos.

Para reparar una base de datos escribimos lo siguiente:

1
mysqlcheck basededatos -uespaciolinux -p

En donde basededatos será el nombre de nuestra base de datos y espaciolinux será el usuario asignado a tal base de datos. Al ejecutar el comando nos pedirá la contraseña para comenzar el proceso.

Optimizando la base de datos.

Una vez reparada nuestra base de datos procederemos a optimizarla, o incluso, podemos solo optimizar la base de datos, para el caso escribimos lo siguiente:

1
mysqlcheck -o basededatos -uespaciolinux -p

Al igual que nuestro ejemplo anterior cambiamos basededatos por el nombre de nuestra base de datos y espaciolinux por el usuarios de nuestra base de datos.

Ejemplo mysqlcheck en terminal
Ejemplo mysqlcheck en terminal

Reparar y optimizar tablas especificas de la base de datos.

Si queremos reparar u optimizar una tabla en particular de una base de datos entonces utilizaremos el comando de la siguiente manera:

1
mysqlcheck -r basededatos tabla -uespaciolinux -p
1
mysqlcheck -o basededatos tabla -uespaciolinux -p

De este modo podemos enfocar nuestras herramientas de mantenimiento y reparación hacia tablas especificas que sabemos que lo requieren.

El comando mysqlcheck tiene cantidad de opciones que nos pueden ayudar en la gestión de nuestras bases de datos por lo que recomiendo su consulta desde la web de MySQL para sacarle mayor provecho o desde la terminal con los siguientes comandos:

1
2
mysqlcheck --help
man mysqlcheck

Sitios de interés:

2
0
817
Califique este artículo

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.