Aprende a usar el comando mysql en GNU/Linux para conectarte y gestionar bases de datos MySQL o MariaDB desde la terminal.


El comando mysql es una herramienta fundamental en entornos GNU/Linux cuando se trabaja con bases de datos MySQL o MariaDB. Permite interactuar con el servidor de base de datos directamente desde la línea de comandos, ejecutar consultas SQL, gestionar bases de datos y realizar tareas administrativas como creación de usuarios o backups.

Este comando es especialmente útil para administradores de sistemas, desarrolladores backend y cualquier persona que gestione servidores con bases de datos MySQL o MariaDB instaladas.

¿Para qué se usa el comando mysql?

El comando mysql permite:

  • Conectarse a un servidor de bases de datos MySQL o MariaDB.
  • Ejecutar consultas y comandos SQL.
  • Administrar bases de datos, tablas y usuarios.
  • Importar y exportar datos.
  • Automatizar tareas con scripts.

Se suele usar tanto en sesiones interactivas como en scripts automatizados, y puede conectarse tanto a bases de datos locales como remotas.

Sintaxis básica

mysql [opciones]

Las opciones más comunes son:

Opción Descripción
-u <usuario> Especifica el nombre de usuario.
-p Solicita la contraseña tras ejecutar el comando.
-h <host> Conecta con un servidor remoto.
-P <puerto> Puerto del servidor de base de datos.
-D <base> Conecta directamente a una base de datos.
-e "<consulta>" Ejecuta una consulta directamente.

Ejemplos prácticos

A continuación os dejamos algunos ejemplos del comando.

Conectarse al servidor local con un usuario

mysql -u t3rr0rz0n3 -p

Se solicitará la contraseña y abrirá el prompt interactivo para ejecutar comandos SQL

Conectarse a una base de datos específica

mysql -u t3rr0rz0n3 -p -D blog

Esto abre directamente la base de datos llamada blog.

Ejecutar una consulta desde la terminal

mysql -u t3rr0rz0n3 -p -D blog -e "SELECT titulo, fecha FROM articulos;"

Ejecuta la consulta SELECT directamente sin necesidad de entrar al prompt interactivo.

Conectarse a un servidor remoto

mysql -u t3rr0rz0n3 -p -h db.example.com -P 3306

Conecta al servidor db.example.com usando el puerto 3306.

Importar/Exportar base de datos

Para importar o exportar base de datos, tenemos un artículo bien detallado que lo explica:

Importar y exportar una Base de Datos en MySQL/MariaDB
Vamos con otro de esos posts obligados para un blog de SysAdmins. Generalmente para importar y exportar bases de datos podemos utilizar aplicaciones como PhpMyAdmin pero a veces dan problemas con bases de datos demasiadas pesadas y acabamos recibiendo un time-out.

Usar archivos SQL con múltiples comandos

mysql -u t3rr0rz0n3 -p < init.sql

Ideal para cargar esquemas o datos de una sola vez.

Conclusión

El comando mysql es una herramienta poderosa y versátil para interactuar con servidores MySQL o MariaDB desde la terminal. Su dominio permite realizar tareas de administración de forma rápida, eficaz y fácilmente automatizable, algo clave en entornos de producción o desarrollo.


¿Buscas otro comando?

¡Revisa nuestro "Diccionario de comandos para GNU/Linux"!

Diccionario de comandos para GNU/Linux
Haz que cada palabra cuente: tu donación nos inspira a seguir creando contenido. Accede al apartado de Donación para hacer tu aportación