MySQL es uno de los sistemas de gestión de bases de datos más populares, y gestionarlo desde la terminal puede ser una habilidad poderosa. Aquí tienes una guía paso a paso que abarca desde la gestión básica hasta la realización de copias de seguridad y restauración de bases de datos usando mysqldump
.
1. Iniciar Sesión en MySQL desde la Terminal:
Para comenzar, inicia sesión en MySQL utilizando el siguiente comando. Reemplaza tu_usuario
con tu nombre de usuario de MySQL.
mysql -u tu_usuario -p
Se te pedirá la contraseña después de ejecutar este comando.
2. Gestionar Bases de Datos:
- Mostrar Bases de Datos:
SHOW DATABASES;
- Seleccionar una Base de Datos:
USE nombre_de_la_base_de_datos;
3. Gestionar Tablas:
- Mostrar Tablas en una Base de Datos:
SHOW TABLES;
- Describir Estructura de una Tabla:
DESCRIBE nombre_de_la_tabla;
4. Realizar Operaciones CRUD:
- Consulta SELECT:
SELECT * FROM nombre_de_la_tabla;
- Insertar Datos:
INSERT INTO nombre_de_la_tabla (columna1, columna2, ...) VALUES (valor1, valor2, ...);
- Actualizar Datos:
UPDATE nombre_de_la_tabla SET columna1 = nuevo_valor WHERE condicion;
- Eliminar Datos:
DELETE FROM nombre_de_la_tabla WHERE condicion;
5. Crear y Eliminar Bases de Datos y Tablas:
- Crear una Nueva Base de Datos:
CREATE DATABASE nombre_de_la_base_de_datos;
- Crear una Nueva Tabla:
CREATE TABLE nombre_de_la_tabla (columna1 tipo_de_dato, columna2 tipo_de_dato, ...);
- Eliminar una Base de Datos:
DROP DATABASE nombre_de_la_base_de_datos;
- Eliminar una Tabla:
DROP TABLE nombre_de_la_tabla;
6. Crear Usuario y Darle Privilegios:
- Crear un Nuevo Usuario:
CREATE USER 'nombre_usuario'@'localhost' IDENTIFIED BY 'contrasena';
- Conceder Todos los Privilegios:
GRANT ALL PRIVILEGES ON *.* TO 'nombre_usuario'@'localhost' WITH GRANT OPTION;
- Actualizar Privilegios:
FLUSH PRIVILEGES;
7. Realizar Copias de Seguridad con mysqldump:
- Realizar un Volcado de una Base de Datos:
mysqldump -u tu_usuario -p nombre_de_la_base_de_datos > backup.sql
- Restaurar una Base de Datos desde un Archivo de Volcado:
mysql -u tu_usuario -p nombre_de_la_base_de_datos < backup.sql
- Realizar un Volcado de Todas las Bases de Datos:
mysqldump -u tu_usuario -p --all-databases > backup_all_databases.sql
8. Programar Copias de Seguridad Automáticas:
Puedes programar copias de seguridad automáticas utilizando herramientas como cron en sistemas basados en Unix o Task Scheduler en Windows.
¡Con esta guía, estarás listo para gestionar bases de datos MySQL de manera efectiva desde la terminal! Ajusta los comandos según tus necesidades específicas y sigue las mejores prácticas de seguridad. ¡Buena suerte!