El mayor portal de MU Online de Brasil — desde 2003
Tutorial Avanzado Tutoriais

Cómo Migrar Servidor de MU Online entre Diferentes Hostings

Guía completa para migrar tu servidor MU Online entre VPS o proveedores de hosting, incluyendo backup de SQL Server, archivos de configuración y checklist de validación post-migración.

EQ Equipo ViciadosMU · Actualizado el 3 jul 2026 · ⏱ 12 min de lectura

Migrar un servidor de MU Online entre diferentes proveedores de hosting es una de las tareas más críticas en la administración de servidores privados. Una migración mal ejecutada puede resultar en pérdida de datos de personajes, corrupción de inventarios y tiempo de inactividad prolongado. Esta guía cubre el proceso completo, desde el backup hasta la prueba final.

Requisitos Previos

Antes de comenzar, ten lo siguiente disponible:

  • Acceso administrativo (RDP o SSH) tanto al VPS de origen como al de destino
  • SQL Server Management Studio (SSMS) instalado en ambas máquinas
  • Espacio en disco suficiente en el destino (mínimo 2x el tamaño actual de los datos)
  • Una ventana de mantenimiento definida (notifica a tus jugadores con anticipación)
Atenção: Nunca realices backups con el servidor en ejecución. Cierra todos los procesos de MuServer antes de cualquier operación de backup de la base de datos para evitar inconsistencias en los datos de personajes y guilds.

Paso 1: Cerrar el Servidor en el Origen

En el servidor de origen, cierra los procesos en el orden correcto:

  1. Cierra GameServer.exe primero (espera a que la ventana se cierre completamente)
  2. Cierra DataServer.exe
  3. Cierra EventServer.exe (si se utiliza)
  4. Cierra ConnectServer.exe al final

Confirma que ningún proceso GameServer.exe permanezca activo mediante el Administrador de Tareas o PowerShell:

Get-Process -Name "GameServer","DataServer","ConnectServer","EventServer" -ErrorAction SilentlyContinue

Si la lista retorna vacía, continúa con el siguiente paso.


Paso 2: Backup de la Base de Datos SQL Server

Abre SSMS en el VPS de origen y ejecuta el backup completo de las bases de datos necesarias. Las bases de datos estándar de MuServer Season 6 son MuOnline, Mu_Log y, dependiendo de la versión, MuWebzen:

-- Backup de la base de datos principal
BACKUP DATABASE [MuOnline]
TO DISK = N'C:\Backup\MuOnline_migracion.bak'
WITH FORMAT, INIT, NAME = N'MuOnline-Full Backup', COMPRESSION, STATS = 10;

-- Backup de la base de datos de logs
BACKUP DATABASE [Mu_Log]
TO DISK = N'C:\Backup\Mu_Log_migracion.bak'
WITH FORMAT, INIT, NAME = N'Mu_Log-Full Backup', COMPRESSION, STATS = 10;

-- Backup de la base de datos web (si existe)
BACKUP DATABASE [MuWebzen]
TO DISK = N'C:\Backup\MuWebzen_migracion.bak'
WITH FORMAT, INIT, NAME = N'MuWebzen-Full Backup', COMPRESSION, STATS = 10;
Dica: Usa la opción COMPRESSION para reducir el tamaño de los archivos .bak entre un 60-70%. En bases de datos con muchos personajes, esto puede ahorrar horas de tiempo de transferencia.

Paso 3: Backup de los Archivos del Servidor

Además de la base de datos, copia toda la estructura de directorios del servidor. Los directorios esenciales son:

C:\MuServer\
  ├── ConnectServer\
  ├── GameServer\
  │   ├── Data\
  │   │   ├── Events\          (Blood Castle, Devil Square, Chaos Castle, etc.)
  │   │   ├── Maps\
  │   │   └── ServerInfo.cfg
  │   └── Setup.ini
  ├── DataServer\
  └── EventServer\

Usa PowerShell para comprimir todo en un único archivo:

Compress-Archive -Path "C:\MuServer\*" -DestinationPath "C:\Backup\MuServer_archivos.zip" -CompressionLevel Optimal

Transfiere los archivos de C:\Backup\ al VPS de destino mediante SFTP, FileZilla o RoboCopy:

robocopy "C:\Backup\" "\\IP_NUEVO_VPS\C$\Backup\" /E /Z /LOG:C:\robocopy_log.txt

Paso 4: Preparar el VPS de Destino

En el VPS de destino, instala SQL Server (misma versión que el origen) y configura las dependencias:

  1. Instala SQL Server con autenticación mixta (SA habilitado)
  2. Instala el Visual C++ Redistributable compatible con tu versión de MuServer
  3. Instala el .NET Framework necesario (generalmente 3.5 o 4.0)
  4. Configura el Firewall de Windows para permitir los puertos necesarios:
# Puerto de SQL Server
netsh advfirewall firewall add rule name="SQL Server" dir=in action=allow protocol=TCP localport=1433

# Puerto del ConnectServer (predeterminado Season 6)
netsh advfirewall firewall add rule name="ConnectServer" dir=in action=allow protocol=TCP localport=44405

# Puerto del GameServer
netsh advfirewall firewall add rule name="GameServer" dir=in action=allow protocol=TCP localport=55901
Nota: Los puertos 44405 y 55901 son los valores predeterminados más comunes en Season 6, pero verifica tus archivos ConnectServer.cfg y Setup.ini para confirmar los valores reales de tu servidor.

Paso 5: Restaurar la Base de Datos en el Destino

En SSMS del VPS de destino, restaura los backups:

-- Restaurar base de datos principal
RESTORE DATABASE [MuOnline]
FROM DISK = N'C:\Backup\MuOnline_migracion.bak'
WITH MOVE N'MuOnline' TO N'C:\SQLData\MuOnline.mdf',
     MOVE N'MuOnline_log' TO N'C:\SQLData\MuOnline_log.ldf',
     RECOVERY, REPLACE, STATS = 10;

-- Restaurar base de datos de logs
RESTORE DATABASE [Mu_Log]
FROM DISK = N'C:\Backup\Mu_Log_migracion.bak'
WITH MOVE N'Mu_Log' TO N'C:\SQLData\Mu_Log.mdf',
     MOVE N'Mu_Log_log' TO N'C:\SQLData\Mu_Log_log.ldf',
     RECOVERY, REPLACE, STATS = 10;

Después de restaurar, vuelve a crear el login de SQL Server utilizado por MuServer y asócialo a las bases de datos:

-- Crear login (reemplaza 'muserver_user' y 'TuContrasenaFuerte123!' con tus valores)
CREATE LOGIN [muserver_user] WITH PASSWORD = N'TuContrasenaFuerte123!', CHECK_POLICY = OFF;

-- Mapear a la base de datos MuOnline
USE [MuOnline];
CREATE USER [muserver_user] FOR LOGIN [muserver_user];
EXEC sp_addrolemember N'db_owner', N'muserver_user';

-- Mapear a la base de datos Mu_Log
USE [Mu_Log];
CREATE USER [muserver_user] FOR LOGIN [muserver_user];
EXEC sp_addrolemember N'db_owner', N'muserver_user';

Paso 6: Actualizar Configuraciones con el Nuevo IP

Este es el paso donde falla la mayoría de las migraciones. Debes actualizar el IP en tres lugares distintos:

6.1 — GameServer/Setup.ini

[Connect]
DBAddr=127.0.0.1        ; IP del SQL Server (127.0.0.1 si es local)
DBPort=1433
DBID=muserver_user
DBPass=TuContrasenaFuerte123!

[GameServer]
ServerCode=0
ServerPort=55901
ConnectServerIP=127.0.0.1  ; IP del ConnectServer (local o IP externo del nuevo VPS)

6.2 — ConnectServer/ConnectServer.cfg

[CONNECT_SERVER]
Port=44405
MaxUser=10000

[SERVER_LIST]
Server0=127.0.0.1,55901,0,Servidor1

6.3 — Actualizar tabla en la base de datos

USE [MuOnline];

-- Actualizar IP del servidor en la tabla de configuración
UPDATE T_GameServerInfo
SET ServerIp = '0.0.0.0'   -- Usa 0.0.0.0 para aceptar todas las interfaces
WHERE ServerCode = 0;

-- Verificar el resultado
SELECT ServerCode, ServerIp, ServerPort FROM T_GameServerInfo;
Dica: Establecer ServerIp = '0.0.0.0' en la tabla T_GameServerInfo evita problemas de binding de IP cuando el servidor cambia de dirección. El IP externo real es administrado por el ConnectServer.

Paso 7: Extraer y Posicionar Archivos del Servidor

# Extraer archivos del servidor en el VPS de destino
Expand-Archive -Path "C:\Backup\MuServer_archivos.zip" -DestinationPath "C:\MuServer\" -Force

Verifica la integridad de los directorios críticos:

C:\MuServer\GameServer\Data\Events\BloodCastle\    → archivos .bmd y .bmd2
C:\MuServer\GameServer\Data\Events\DevilSquare\    → archivos de configuración del evento
C:\MuServer\GameServer\Data\Maps\                  → archivos de mapa .att y .obj

Paso 8: Inicio y Validación

Inicia los procesos en el orden correcto en el VPS de destino:

  1. DataServer.exe → espera el mensaje "DataServer Started"
  2. EventServer.exe → espera la confirmación de conexión
  3. ConnectServer.exe → espera "ConnectServer Ready"
  4. GameServer.exe → espera "GameServer Ready" y confirmación de conexión a SQL

Checklist de Validación Post-Migración

Ejecuta estas consultas para confirmar la integridad de los datos:

USE [MuOnline];

-- Verificar total de cuentas
SELECT COUNT(*) AS TotalCuentas FROM MEMB_INFO;

-- Verificar total de personajes
SELECT COUNT(*) AS TotalPersonajes FROM Character;

-- Verificar guilds activas
SELECT COUNT(*) AS TotalGuilds FROM Guild WHERE G_Score > 0;

-- Probar un personaje específico
SELECT Name, cLevel, Money, MapNumber FROM Character WHERE Name = 'NombreDelPersonaje';
Atenção: Si GameServer inicia pero se desconecta en bucle, revisa el archivo GameServer/Log/GameServer.log. Los errores "DB Connection Failed" indican un problema con las credenciales en Setup.ini. Los errores "ConnectServer Timeout" indican un problema de IP/puerto en ConnectServer.cfg.

Solución de Problemas Comunes

Error: "Cannot open database MuOnline requested by the login" → El usuario SQL fue creado pero no mapeado a la base de datos. Vuelve a ejecutar el bloque CREATE USER y sp_addrolemember del Paso 5.

Error: "GameServer cannot connect to ConnectServer" → Verifica que el IP en Setup.ini sección [GameServer] campo ConnectServerIP apunte a la dirección correcta. En servidores locales usa 127.0.0.1.

Los personajes aparecen pero los inventarios están vacíos → Generalmente indica que la base de datos Mu_Log no fue restaurada o que DataServer usa configuraciones de conexión antiguas. Revisa DataServer/DataServer.ini.

Los eventos no inician en los horarios correctos → Compara la zona horaria de Windows entre el VPS antiguo y el nuevo (tzutil /g). Ajusta con tzutil /s "SA Eastern Standard Time" si es necesario.

Perguntas frequentes

¿Necesito apagar el servidor durante la migración?

Sí. Para garantizar la consistencia de la base de datos, GameServer, ConnectServer y DataServer deben estar completamente cerrados antes de iniciar el backup de SQL Server. Migrar con el servidor activo puede resultar en datos corruptos o transacciones incompletas.

¿Qué versión de SQL Server debo instalar en la VPS nueva?

Usa la misma versión que la VPS de origen siempre que sea posible. Las migraciones entre versiones (ej: 2008 → 2019) son posibles, pero requieren verificar la compatibilidad de collation (se recomienda Latin1_General_CI_AS) y restaurar con WITH RECOVERY.

¿Debo actualizar todos los IPs en los archivos de configuración?

Sí. Debes actualizar ConnectServer/ConnectServer.cfg, GameServer/Data/ServerInfo.cfg y la tabla T_GameServerInfo en la base de datos MuOnline. El IP antiguo en ConnectServer impedirá que los clientes se conecten al nuevo servidor.

¿Qué hacer si GameServer no puede conectar a SQL Server después de la migración?

Verifica el archivo GameServer/Setup.ini — las entradas DBAddr, DBPort, DBID y DBPass deben reflejar las credenciales de la nueva instancia de SQL Server. También verifica que SQL Server Browser esté activo y que el puerto 1433 esté permitido en el firewall de Windows.

EQ

Equipo ViciadosMU

Equipe editorial do ViciadosMU — portal de MU Online no ar desde 2003.

Sigue leyendo

Artículos relacionados

💽
Tutorial

¿Windows o Linux para servidor de MU Online?

Guía completa para decidir entre Windows y Linux al montar un servidor de MU Online: por qué el MuServer está vinculado a Windows (ejecutables .exe y SQL Server de Microsoft), en qué situaciones Linux puede ser útil (especialmente para el sitio web), la combinación más común en servidores LATAM (Windows para el juego + hosting Linux para el sitio), los requisitos de Windows Server para diferentes escalas, cuánto impacto tiene el sistema operativo en el rendimiento, la discusión sobre correr MuServer en Wine/Linux (el estado actual y por qué no es recomendado para producción), y cómo elegir la versión de Windows Server adecuada para tu VPS.

12 min · Principiante
🔌
Tutorial

Cómo conectar a un VPS o dedicado y subir archivos por FTP

Guía completa para conectarse y gestionar un VPS o servidor dedicado para MU Online: qué es un VPS y un dedicado y cuándo cada uno tiene sentido para un servidor de MU Online, cómo conectarse a un VPS Windows por Escritorio Remoto (RDP) con la dirección IP y credenciales del proveedor, cómo configurar RDP para conexiones seguras y cómo cambiar el puerto por defecto para reducir ataques de fuerza bruta, cómo transferir archivos al servidor usando FileZilla y el protocolo SFTP (más seguro que FTP plano), cómo configurar una sesión guardada en FileZilla para no ingresar credenciales cada vez, los comandos de FTP más usados para gestión de archivos, la comparativa técnica entre VPS con Linux y VPS con Windows para servidor de MU, las diferencias de rendimiento entre VPS y dedicado, y los proveedores más populares de VPS para servidores de MU Online en LATAM.

12 min · Principiante
🌍
Tutorial

Cómo alojar el sitio web de tu servidor de MU Online

Guía completa para poner el sitio web de tu servidor de MU Online en línea: qué función tiene el sitio (registro de cuentas, ranking, descarga del cliente, noticias), las opciones de alojamiento (el mismo VPS del servidor, un hosting compartido separado, o XAMPP/AppServ local para pruebas), cómo subir los archivos del sitio por FTP, cómo configurar la conexión del sitio con la base de datos SQL Server del servidor de MU (host, usuario, contraseña, base), qué es IonCube y por qué muchos sistemas web de MU lo requieren (y cómo instalarlo en cPanel o en el VPS), cómo configurar los permisos correctos de las carpetas del sitio, cómo probar que el registro de cuenta funciona y que el ranking se actualiza, y los errores más comunes al montar el sitio (página en blanco, error de IonCube, error de base de datos).

12 min · Intermedio