0% encontró este documento útil (0 votos)
4 vistas13 páginas

Tutorial Docker MySQL Completo

Este tutorial proporciona una guía completa para instalar y configurar Docker con MySQL, incluyendo la creación de contenedores y la conexión a herramientas gráficas como MySQL Workbench y DBeaver. Se detallan los pasos de instalación según el sistema operativo, la ejecución de comandos para gestionar contenedores y la creación de procedimientos almacenados. Además, se ofrecen consejos para evitar errores comunes y se sugiere mantener los procedimientos en un script para su versionado.

Cargado por

barryallen4207
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
4 vistas13 páginas

Tutorial Docker MySQL Completo

Este tutorial proporciona una guía completa para instalar y configurar Docker con MySQL, incluyendo la creación de contenedores y la conexión a herramientas gráficas como MySQL Workbench y DBeaver. Se detallan los pasos de instalación según el sistema operativo, la ejecución de comandos para gestionar contenedores y la creación de procedimientos almacenados. Además, se ofrecen consejos para evitar errores comunes y se sugiere mantener los procedimientos en un script para su versionado.

Cargado por

barryallen4207
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Tutorial_Docker_MySQL_Completo.

md 2025-10-21

7. 🐳 Tutorial completo: Instalación y configuración de


Docker para MySQL
Este tutorial explica paso a paso cómo instalar Docker, crear un contenedor con MySQL, y conectarlo a
herramientas gráficas como MySQL Workbench o DBeaver.
Incluye configuraciones, comandos explicados y soluciones a errores comunes.

1. Ajustes previos según sistema operativo


Antes de instalar Docker, hay que preparar el entorno.
Docker necesita virtualizar Linux en sistemas Windows, por lo que los pasos iniciales dependen de tu sistema
operativo.

🪟 Windows

Docker funciona virtualizando entornos Linux usando el subsistema WSL 2 (Windows Subsystem for
Linux).
Si aún no lo tienes instalado, sigue estos pasos:

1. Abre tu terminal (PowerShell o Git Bash) como administrador.

2. Ejecuta el siguiente comando:

wsl --install -d Ubuntu

(Puedes usar otra distribución, pero Ubuntu es la más estable y documentada)

3. Reinicia tu computadora cuando finalice la instalación.

4. Docker Desktop detectará WSL automáticamente al iniciar.

📸 Ejemplo visual:

🐧 Linux y 🍎 Mac

No requieren WSL. Solo asegúrate de tener permisos de usuario root o usar sudo.
1 / 13
Tutorial_Docker_MySQL_Completo.md 2025-10-21

2. Instalación de Docker
Windows y Mac

Descarga Docker Desktop desde el sitio oficial:


👉 [Link]

Durante la instalación, asegúrate de activar las opciones:

“Use WSL 2 based engine” (en Windows)


“Add Docker to PATH”

Linux

Sigue las instrucciones oficiales para tu distribución:


👉 [Link]

💡 Consejo: instala también docker-compose para trabajar con archivos YAML.

3. Verificar la instalación
Una vez instalado, abre una terminal y ejecuta:

docker --version

Si todo está correcto, deberías ver algo como:

4. Primeros pasos con Docker y MySQL


4.1 Descargar la imagen oficial

Docker usa imágenes como plantillas de contenedores.


Para MySQL ejecuta:

docker pull mysql:8.0

Usa una versión específica (8.0) en lugar de latest para evitar incompatibilidades.

2 / 13
Tutorial_Docker_MySQL_Completo.md 2025-10-21

4.2 Ver imágenes descargadas

docker images

4.3 Crear y ejecutar un contenedor

Ejecuta:

docker run -d --name mysql_server -e MYSQL_ROOT_PASSWORD=12345 -e


MYSQL_DATABASE=mi_base_de_datos -e MYSQL_USER=mi_usuario -e
MYSQL_PASSWORD=mi_contraseña -p 3306:3306 mysql:8.0

Explicación:

-d: Modo detached (segundo plano)


--name: Nombre del contenedor
-e: Variables de entorno (contraseñas, usuarios, BD)
-p: Mapea el puerto local con el del contenedor
mysql:8.0: Imagen base

⚠ Usa contraseñas seguras en entornos reales.

4.4 Ver contenedores en ejecución

docker ps

4.5 Acceder al contenedor

Usamos los comandos:

3 / 13
Tutorial_Docker_MySQL_Completo.md 2025-10-21

docker exec -it mysql_server bash

Luego de ejecutar el comando anterior, estarás dentro del contenedor. Ahora, para conectarte a MySQL, así
que escribimos:

mysql -u root -p

Y eso nos permite conectarnos a MySQL dentro del contenedor, nos pedirá la contraseña que establecimos
antes (12345) la escribimos (no se verá por seguridad) y presionamos Enter. Si todo salió bien, deberíamos ver
el prompt de MySQL.

4.6 Salir del contenedor

exit

Para salir del contenedor, simplemente escribe:

exit

4.7 Detener y eliminar el contenedor

docker stop mysql_server


docker rm mysql_server

4 / 13
Tutorial_Docker_MySQL_Completo.md 2025-10-21

💡 Si deseas mantener los datos después de eliminar el contenedor, deberías montar un volumen.
Ejemplo:

docker run -d --name mysql_server -v ./datos_mysql:/var/lib/mysql ...

5. Instalación de herramientas gráficas (Workbench y DBeaver)


Estas aplicaciones permiten administrar tu base de datos sin usar la terminal (que es lo más cómodo).

5.1 MySQL Workbench

1. Descarga desde [Link]


2. Sigue las instrucciones de instalación.
3. Abre MySQL Workbench y crea una conexión:

Hacer clic en el botón "+" para crear una nueva conexión


Rellenar los campos de la siguiente manera:
Connection Name: Nombre de la conexión (por ejemplo, "Mi MySQL Docker")
Hostname: localhost
Port: 3306
Username: root
Password: 12345
Default Schema: mi_base_de_datos (opcional, esto permite que al conectarse se seleccione esta
base de datos por defecto y se ejecuten las consultas directamente en ella)
Hacer clic en "Test Connection" para verificar que la conexión funciona
Hacer clic en "OK" para guardar la conexión

5.2 DBeaver

1. Descarga desde [Link]


2. Crea una nueva conexión MySQL con:
Host: localhost
Port: 3306
Database: mi_base_de_datos
User: root

5 / 13
Tutorial_Docker_MySQL_Completo.md 2025-10-21

Password: 12345

En la pestaña Driver Properties cambia:

useSSL → false
allowPublicKeyRetrieval → true

💡 Esto evita errores comunes como “Public Key Retrieval not allowed” que suceden al conectar bases
de datos que no tienen configuradas los certificados SSL, pero como trabajamos en un entorno de
desarrollo local, no es necesario y optamos por la solución más corta y sencilla.

6. Ejecutar tu script SQL


6.1 En MySQL Workbench

1. Abre un nuevo editor SQL.


2. Pega tu script de creación e inserción de datos.
3. Selecciona todo el texto (Ctrl + A).
4. Haz clic en el ícono de rayo ⚡ o presiona Ctrl + Shift + Enter.

6 / 13
Tutorial_Docker_MySQL_Completo.md 2025-10-21

5. Verifica que las tablas aparezcan en el esquema.

6.2 En DBeaver

1. Clic derecho en la conexión → SQL Editor → Nuevo script SQL.


2. Pega tu script completo.
3. Selecciona todo (Ctrl + A) y presiona Alt + X (Ejecutar script completo) o presiona el botón de ejecutar
script.
4. Verifica que las tablas y datos se hayan creado correctamente.

7 / 13
Tutorial_Docker_MySQL_Completo.md 2025-10-21

7. Creación de procedimientos almacenados en MySQL


Una vez que la base de datos está configurada y los datos cargados, podemos crear procedimientos
almacenados para automatizar tareas dentro de MySQL.
En esta sección aprenderás cómo hacerlo tanto desde la terminal del contenedor Docker como desde las
interfaces gráficas (MySQL Workbench y DBeaver).

7.1 Desde la terminal Docker


1. Accede al contenedor con:

docker exec -it mysql_server bash


mysql -u root -p

2. Selecciona tu base de datos:

USE mi_base_de_datos;

3. Crea un procedimiento. Por ejemplo, uno que liste todos los clientes:

DELIMITER $$

CREATE PROCEDURE listar_clientes()


BEGIN
SELECT * FROM cliente;
END$$

DELIMITER ;

4. Ejecuta el procedimiento:

CALL listar_clientes();

💡 Recuerda: los comandos DELIMITER solo se usan en la consola o Workbench, no en DBeaver.

7.2 Desde MySQL Workbench


1. Abre tu conexión en Workbench.

2. En el menú lateral, despliega Schemas → tu_base_de_datos → Stored Procedures.

8 / 13
Tutorial_Docker_MySQL_Completo.md 2025-10-21

3. Haz clic derecho → Create Stored Procedure.

4. Escribe tu código en el editor SQL:

CREATE PROCEDURE registrar_cliente(


IN p_nombre VARCHAR(50),
IN p_categoria VARCHAR(20)
)
BEGIN
INSERT INTO cliente(nombre, categoria, fecha_registro)
VALUES (p_nombre, p_categoria, CURDATE());
END;

5. Presiona en Apply.

9 / 13
Tutorial_Docker_MySQL_Completo.md 2025-10-21

6. Dejamos todo en default y hacemos clic en Apply.

7. En stored procedures, buscamos el procedimiento creado y presionamos en el rayo ⚡ para ejecutarlo

o usamos CALL. o usando


el comando:

CALL registrar_cliente('Juan Pérez', 'casero');

10 / 13
Tutorial_Docker_MySQL_Completo.md 2025-10-21

Si necesitas modificar el procedimiento, puedes hacer clic derecho sobre él → Alter Procedure.

7.3 Desde DBeaver


DBeaver también permite crear y editar procedimientos almacenados, pero con una ligera diferencia en la
ejecución.

1. Abre tu conexión MySQL.

2. Clic derecho → Editor SQL → Nuevo script SQL.

3. Pega el siguiente ejemplo:

CREATE PROCEDURE contar_clientes_por_categoria(IN p_categoria VARCHAR(20))


BEGIN
SELECT COUNT(*) AS total
FROM cliente
WHERE categoria = p_categoria;
END;

4. Selecciona todo el bloque y ejecuta con Alt + X (para ejecutar múltiples sentencias).

Si tienes activado el soporte de múltiples consultas, también puedes usar Ctrl + Enter.

5. Llama al procedimiento con:

CALL contar_clientes_por_categoria('casero');

7.4 Ver, editar o eliminar procedimientos


Ver todos los procedimientos:

SHOW PROCEDURE STATUS WHERE Db = 'mi_base_de_datos';

Ver su código fuente:

11 / 13
Tutorial_Docker_MySQL_Completo.md 2025-10-21

SHOW CREATE PROCEDURE listar_clientes;

Eliminar un procedimiento:

DROP PROCEDURE IF EXISTS listar_clientes;

O también desde la interfaz gráfica


En MySQL Workbench: clic derecho sobre el procedimiento → Drop Stored Procedure.

En DBeaver: clic derecho sobre el procedimiento → Delete.

12 / 13
Tutorial_Docker_MySQL_Completo.md 2025-10-21

🧠 Consejo:
Guarda todos tus procedimientos en un script .sql (por ejemplo [Link]) y ejecútalo
desde DBeaver con Alt + X para mantenerlos versionados junto al proyecto.

Actualizado para Docker 25.x y MySQL 8.0

13 / 13

También podría gustarte