MySQL portable en Windows: instalación y conexión con DBeaver

Written by

in

Versión probada: MySQL 8.0.46 · DBeaver Community — requisito: no se necesitan permisos de administrador.

Esta guía cubre una instalación completamente portable de MySQL 8 en Windows, útil en equipos corporativos donde no hay acceso de administrador, o simplemente para tener una instancia aislada de pruebas sin tocar el sistema y sin molestar a los departamentos de soporte o a infraestructura.

1. Descargar MySQL 8

  1. Ir a dev.mysql.com/downloads/mysql
  2. Seleccionar Windows (x86, 64-bit), ZIP Archive
  3. Descargar y descomprimir en una carpeta de tu usuario, por ejemplo:
C:\Users\TU_USUARIO\Downloads\mysql-8.0.46-winx64\

2. Crear el archivo de configuración my.ini

Crear el archivo my.ini en la raíz de la carpeta descomprimida (un nivel arriba de bin\):

C:\Users\TU_USUARIO\Downloads\mysql-8.0.46-winx64\mysql-8.0.46-winx64\my.ini

Contenido del archivo (ajustar las rutas a tu usuario):

[mysqld]
basedir=C:/Users/TU_USUARIO/Downloads/mysql-8.0.46-winx64/mysql-8.0.46-winx64
datadir=C:/Users/TU_USUARIO/Downloads/mysql-8.0.46-winx64/mysql-8.0.46-winx64/data
port=3306

[client]

port=3306

Importante: usar siempre / (forward slash) en las rutas, aunque sea Windows.

3. Inicializar la base de datos

Abrir PowerShell (no se requiere administrador) y navegar a la carpeta raíz:

cd C:\Users\TU_USUARIO\Downloads\mysql-8.0.46-winx64\mysql-8.0.46-winx64

Ejecutar la inicialización:

.\bin\mysqld.exe --initialize --console

Buscar en la salida la línea con la contraseña temporal y copiarla:

[Note] ... A temporary password is generated for root@localhost: XXXXXXXX

Si aparece el error data directory has files in it, limpiar primero la carpeta data:

Remove-Item -Recurse -Force .\data\*

Luego repetir el comando de inicialización.

4. Arrancar el servidor

Desde la misma ventana PowerShell:

.\bin\mysqld.exe --defaults-file="C:\Users\TU_USUARIO\Downloads\mysql-8.0.46-winx64\mysql-8.0.46-winx64\my.ini" --console

Dejar esta ventana abierta. Es el proceso del servidor MySQL. Para detenerlo usar Ctrl+C o el comando de apagado del paso siguiente.

5. Conectar y cambiar la contraseña

Abrir otra ventana de PowerShell y ejecutar:

cd C:\Users\TU_USUARIO\Downloads\mysql-8.0.46-winx64\mysql-8.0.46-winx64\bin
.\mysql.exe -u root -p

Pegar la contraseña temporal cuando la solicite. Luego cambiarla obligatoriamente:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'TuNuevaPassword123!';

6. Apagar el servidor limpiamente

Cuando necesites detener MySQL, desde PowerShell:

.\mysqladmin.exe -u root -p shutdown

7. Script de arranque (opcional)

Crear un archivo start_mysql.bat en la carpeta raíz para arrancar fácilmente:

@echo off
cd /d C:\Users\TU_USUARIO\Downloads\mysql-8.0.46-winx64\mysql-8.0.46-winx64
.\bin\mysqld.exe --defaults-file="C:\Users\TU_USUARIO\Downloads\mysql-8.0.46-winx64\mysql-8.0.46-winx64\my.ini" --console

Doble clic en el .bat para arrancar el servidor.

8. Instalar DBeaver Community

  1. Descargar desde dbeaver.io/download la versión Windows installer
  2. Instalar normalmente (no requiere permisos de administrador si se instala en la carpeta de perfil del usuario)

9. Conectar DBeaver a MySQL

  1. Abrir DBeaver
  2. Database → New Database Connection → MySQL
  3. Completar los datos:
CampoValor
Server Hostlocalhost
Port3306
Usernameroot
PasswordLa que configuraste en el paso 5

En la primera conexión, DBeaver pedirá descargar el driver de MySQL — clic en Download.

10. Solucionar error: Public Key Retrieval is not allowed

Este error es común con MySQL 8. Solucionarlo en la pestaña Driver Properties de la conexión:

PropertyValue
allowPublicKeyRetrievaltrue
useSSLfalse

Alternativamente, modificar el JDBC URL directamente:

jdbc:mysql://localhost:3306/?allowPublicKeyRetrieval=true&useSSL=false

Luego hacer clic en Test Connection para verificar.

11. Restaurar un dump .sql

Opción A — Desde CMD (recomendado para archivos grandes)

Abrir cmd.exe (no PowerShell, ya que PowerShell no soporta redirección con <):

cd C:\Users\TU_USUARIO\Downloads\mysql-8.0.46-winx64\mysql-8.0.46-winx64\bin
mysql.exe -u root -p < "C:\ruta\completa\tu_dump.sql"

Opción B — Desde PowerShell

Get-Content "C:\ruta\completa\tu_dump.sql" | .\mysql.exe -u root -p

Opción C — Desde DBeaver

  1. Clic derecho sobre la base de datos → Tools → Execute Script
  2. Seleccionar el archivo .sql
  3. Ejecutar

Si el dump no incluye CREATE DATABASE, crear la base de datos primero:

CREATE DATABASE nombre_db;

Notas adicionales

  • El servidor no se inicia automáticamente al encender el equipo (sin permisos de admin no se puede registrar como servicio de Windows). Hay que arrancarlo manualmente con el .bat del paso 7.
  • Para verificar que el servidor está corriendo antes de conectar, ejecutar desde PowerShell:
.\bin\mysqladmin.exe -u root -p status
  • IMPORTANTE: En PowerShell, todos los ejecutables deben ir precedidos de .\ (ej. .\mysql.exe, .\mysqld.exe).