20 comandos útiles de mysqladmin
La herramienta de línea mysqladmin es instalada junto con el servidor MySQL. Es muy usada por Administradores de Bases de Datos para llevar a cabo tareas básicas de MySQL como especificar y/o cambiar la contraseña del usuario root; supervisar los proceso de MySQL; recargar privilegios; chequear el estado del servidor, entre otros.
Requerimientos
- Tener instalado un servidor de bases de datos MySQL.
Si no sabes cómo instalar este tipo de servidor, sigue las instrucciones de nuestro tutorial “Cómo Instalar Linux, Apache, PHP, MySQL (LAMP) en Ubuntu 16.04”.
Comandos útiles
1- ¿Cómo establecer la contraseña del usuario root?
Si durante la instalación del servidor MySQL no especificaste la contraseña del usuario root, puedes hacerlo mediante:
1 |
# mysqladmin -u root password TU-PASS |
2- ¿Cómo cambiar la contraseña del usuario root?
Para cambiar o actualizar la contraseña del usuario root de MySQL, puedes especificar el siguiente comando:
1 |
# mysqladmin -u root –pVIEJO-PASS password 'NUEVO-PASS' |
3- ¿Cómo comprobar si el servidor MySQL está corriendo?
Es muy sencillo a través de esta forma:
1 |
# mysqladmin -u root -p ping |
O de la forma tradicional:
1 |
# systemctl status mysql.service |
4- ¿Cómo conocer la versión de MySQL de mi servidor?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
# mysqladmin -u root -p version Enter password: mysqladmin Ver 8.42 Distrib 5.5.54, for debian-linux-gnu on i686 Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. <strong>Server version 5.5.54-0+deb8u1</strong> Protocol version 10 Connection Localhost via UNIX socket UNIX socket /var/run/mysqld/mysqld.sock Uptime: 11 min 6 sec Threads: 1 Questions: 624 Slow queries: 0 Opens: 220 Flush tables: 1 Open tables: 72 Queries per second avg: 0.936 |
5- ¿Cómo conocer el estado actual de mi servidor MySQL?
Para conocer el tiempo que lleva ejecutándose el servidor MySQL, así como el número de hilos y consultas, puedes ejecutar:
1 |
# mysqladmin -u root -p status |
6- ¿Cómo ver el estado de todas las variables del servidor MySQL y sus valores?
Para ello, ejecuta el siguiente comando, el cual debe mostrar algo como:
1 |
# mysqladmin -u root -p extended-status |
7- ¿Cómo ver las variables del servidor MySQL y sus valores?
Puedes ver todas las variables en ejecución y sus valores así:
1 |
# mysqladmin -u root -p variables |
8- ¿Cómo ver todos los procesos que están corriendo del servidor MySQL?
1 |
# mysqladmin -u root -p processlist |
9- ¿Cómo crear una base de datos en el servidor MySQL?
Para ello, solo ejecuta:
1 |
# mysqladmin -u root -p create nombre-base-de-datos |
Para comprobar si fue creada, puedes iniciar la consola MySQL y listar las bases de datos:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
# mysql -u root –p mysql> show databases; +----------------------+ | Database | +----------------------+ | information_schema | | managementdb | | mysql | | nombre-base-de-datos | | performance_schema | | phpmyadmin | | roundcubemail | +----------------------+ 7 rows in set (0.00 sec) |
10- ¿Cómo eliminar una base de datos en el servidor MySQL?
Para borrar una base de datos puedes emplear el comando que te muestro a continuación. Debes confirmar la operación de borrado (drop) presionando la tecla ‘y’:
1 2 3 4 5 6 |
# mysqladmin -u root -p drop nombre-base-de-datos Enter password: Dropping the database is potentially a very bad thing to do. Any data stored in the database will be destroyed. Do you really want to drop the ' nombre-base-de-datos ' database [y/N] y Database " nombre-base-de-datos " dropped |
11- ¿Cómo recagar/refrescar los privilegios MySQL?
El comando reload le dice al servidor que recargue las tablas grant; mientras que el comando refresh limpia todas las tablas y reabre los archivos de logs.
1 2 |
# mysqladmin -u root -p reload # mysqladmin -u root -p refresh |
12-¿Cómo apagar el servidor MysQL correctamente?
Para ello ejecuta el siguiente comando:
1 |
# mysqladmin -u root -p shutdown |
O puedes hacerlo también de forma tradicional:
1 |
# systemctl stop mysql.service |
Para iniciarlo nuevamente:
1 |
# systemctl start mysql.service |
13- Comandos flush útiles
- flush-hosts: Limpia la información sobre hosts en la caché de hosts
- flush-tables: Limpia todas las tablas.
- flush-thereads: Limpia todos los hilos caché.
- flush-logs: Limpia la información de logs.
- flush-privileges: Recarga las tablas grant (lo mismo que reload).
- flush-status: Limpia las variables de estado.
Para ejecutar los comandos anteriores, solo ejecuta:
1 |
# mysqladmin -u root -p flush-comando |
Donde flush-comando es uno de los de la lista anterior.
14- ¿Cómo matar un proceso del cliente MySQL que está durmiendo?
Primero debes identificar el proceso del cliente MySQL que está durmiendo (sleeping):
1 2 3 4 5 6 7 8 |
# mysqladmin -u root -p processlist Enter password: +----+------+-----------+----+---------+------+-------+------------------+ | Id | User | Host | db | Command | Time | State | Info | +----+------+-----------+----+---------+------+-------+------------------+ | 5 | root | localhost | | Sleep | 14 | | | | 8 | root | localhost | | Query | 0 | | show processlist | +----+------+-----------+----+---------+------+-------+------------------+ |
De comando tenemos que el proceso con ID 5 se encuentra durmiend. Para matarlo ejecuta el siguiente comando:
1 2 3 4 5 6 7 |
# mysqladmin -u root -p kill 5 Enter password: +----+------+-----------+----+---------+------+-------+------------------+ | Id | User | Host | db | Command | Time | State | Info | +----+------+-----------+----+---------+------+-------+------------------+ | 12 | root | localhost | | Query | 0 | | show processlist | +----+------+-----------+----+---------+------+-------+------------------+ |
Para matar varios procesos a la vez, puedes hacerlo pasando el ID del proceso separado por comas, como se muestra a continuación:
1 |
# mysqladmin -u root -p kill 4,12 |
15- ¿Cómo ejecutar varios comandos mysqladmin a la vez?
Es muy simple, solo tienes que separarlos por espacio, como se muestra a continuación:
1 |
# mysqladmin -u root -p processlist status version |
16- ¿Cómo conectarse a un servidor MySQL remoto?
La conexión a servidores remotos MySQL puede hacerse mediante la -h (host):
1 |
# mysqladmin -h IP.SERVIDOR.MYSQL.MYSQL -u root -p |
17- ¿Cómo ejecutar un comando en un servidor MySQL remoto?
Se sigue el mismo procedimiento que el ejemplo anterior, solo debes adicionar el comando que quieres ejecutar. Por ejemplo, para ver el estado del servidor MySQL remoto:
1 |
# mysqladmin -h IP.SERVIDOR.MYSQL.MYSQL -u root –p status |
18- ¿Cómo iniciar/parar la replicación MySQL en un servidor esclavo?
Para iniciar la replicación:
1 |
# mysqladmin -u root -p start-slave |
Para parar la replicación:
1 |
# mysqladmin -u root -p stop-slave |
19- ¿Cómo almacenar la información de depuración (debug) del servidor MySQL hacia los logs?
Si activas la depuración de información, tendrás en los logs información sobre los locks en uso, memoria y consultas SQL, además de información sobre el programador de eventos:
1 |
# mysqladmin -u root -p debug |
20- ¿Cómo ver las opciones de uso de mysqladmin?
Cómo todas las herramientas de comandos, puedes ver la ayuda mediante
1 |
# mysqladmin --help |
Espero que te hayan sido de utilidad estos 20 comandos para mysqladmin que he compartido. Pero si aún necesitas más información sobre esta herramienta, puedes consultar la documentación oficial.
Dejar un comentario
¿Quieres unirte a la conversación?Siéntete libre de contribuir