Cómo configurar SQL Server para MU Online — guía completa
Guía completa para configurar SQL Server como base de datos de un servidor de MU Online: por qué SQL Server es la base de datos estándar de MU (y no MySQL ni otros), los pasos exactos para restaurar la base de datos del MuServer (el archivo .bak que viene con la distribución), cómo crear un usuario SQL dedicado para el servidor en lugar de usar 'sa', cómo configurar la conexión ODBC que el MuServer usa para hablar con la base, cómo habilitar el protocolo TCP/IP en SQL Server Configuration Manager, la solución a los 3 errores de conexión más comunes (SQL parado, TCP/IP deshabilitado, Mixed Mode apagado), y cómo hacer backup automático de la base para proteger el progreso de los jugadores.
SQL Server es el corazón de datos de tu servidor de MU Online — almacena absolutamente todo: cuentas, personajes, ítems, guilds, rankings, y el progreso de cada jugador. Sin SQL Server correctamente configurado, el MuServer ni siquiera puede arrancar. Esta guía cubre cada paso del proceso.
SQL Server es el corazón de datos de tu servidor de MU Online — almacena absolutamente todo: cuentas, personajes, ítems, guilds, rankings, y el progreso de cada jugador. Sin SQL Server correctamente configurado, el MuServer ni siquiera puede arrancar. Esta guía cubre cada paso del proceso.
Paso 1 — Verificar que SQL Server está en modo mixto
POR QUÉ EL MODO MIXTO ES OBLIGATORIO:
SQL Server tiene dos modos de autenticación:
→ Modo Windows: solo acepta logins con cuentas de Windows — MuServer NO puede usar esto
→ Modo Mixto: acepta logins de Windows Y logins con usuario/contraseña de SQL — MuServer necesita esto
VERIFICAR O CAMBIAR EL MODO DE AUTENTICACIÓN:
1. Abre SQL Server Management Studio (SSMS)
2. Conecta con la cuenta de Windows (si el modo mixto no está activado: conéctate desde el servidor)
3. Clic derecho en el nombre del servidor en el panel izquierdo → Properties
4. En el panel izquierdo: Security
5. En "Server authentication": selecciona "SQL Server and Windows Authentication mode" (= Modo Mixto)
6. Haz clic en OK
7. REINICIA el servicio SQL Server (obligatorio — el cambio no aplica sin reinicio)
DEFINIR/CAMBIAR LA CONTRASEÑA DEL 'sa':
Si el modo mixto ya estaba activado pero no recuerdas la contraseña del 'sa':
1. En SSMS: Security → Logins → sa → clic derecho → Properties
2. En la pestaña General: escribe la nueva contraseña (y confírmala)
3. En la pestaña Status: asegúrate de que Login = Enabled
4. OK
NOTA: si ni siquiera puedes conectarte porque no sabes la contraseña del 'sa' y el modo Windows tampoco funciona, necesitas iniciar SQL Server en "modo de usuario único" (sqlservr.exe -m) para recuperar el acceso — proceso avanzado que sale del alcance de esta guía.
Paso 2 — Restaurar la base de datos del MuServer
EL ARCHIVO DE BACKUP (.BAK):
Tu distribución de MuServer viene con un archivo .bak (o scripts .sql) que contiene la estructura y los datos iniciales de la base.
→ El .bak es la base "limpia" — sin cuentas de jugadores, con todos los datos del juego
→ Restaurar este .bak crea la base desde cero
RESTAURAR MEDIANTE SSMS (interfaz gráfica):
1. En SSMS: clic derecho en "Databases" → "Restore Database..."
2. En "Source": selecciona "Device" → clic en "..." → selecciona el archivo .bak
3. En "Destination": verifica que el nombre de la base a restaurar es correcto (generalmente "MuOnline")
4. Haz clic en OK para iniciar la restauración
5. Espera — para bases grandes puede tomar varios minutos
6. Si aparece el mensaje "Database MuOnline restored successfully": éxito
RESTAURAR MEDIANTE COMANDOS SQL (cuando la interfaz falla):
-- Abrir una consulta nueva en SSMS y ejecutar:
RESTORE DATABASE MuOnline
FROM DISK = 'C:\ruta\a\tu\archivo\MuOnline.bak'
WITH MOVE 'MuOnline' TO 'C:\Program Files\Microsoft SQL Server\...Data\MuOnline.mdf',
MOVE 'MuOnline_log' TO 'C:\Program Files\Microsoft SQL Server\...Data\MuOnline_log.ldf',
REPLACE;
→ Ajusta las rutas a los archivos de datos de SQL en TU instalación
RESTAURAR DESDE SCRIPTS .SQL (en algunas distribuciones):
1. En SSMS: crea una base de datos nueva con el nombre correcto
2. Abre el archivo .sql de la distribución
3. En SSMS: File → Open → Abrir el .sql
4. Ejecutar (F5 o el botón Execute)
5. Si hay múltiples archivos .sql: ejecutarlos en el orden indicado por la distribución
Paso 3 — Crear un usuario SQL dedicado
POR QUÉ NO USAR 'sa' DIRECTAMENTE:
→ 'sa' es el superusuario de SQL Server con acceso TOTAL a todas las bases
→ Si alguien obtiene la contraseña del 'sa': tiene acceso a todo
→ El MuServer solo necesita acceso a la base de MU — no a todas las bases del servidor
→ Por seguridad: crea un usuario específico solo para MuServer
CREAR EL USUARIO (en SSMS, Nueva Consulta):
-- Crear el login de SQL
CREATE LOGIN mu_server WITH PASSWORD = 'TuContraseñaSegura123!';
-- Usar la base de MU
USE MuOnline;
-- Crear el usuario en la base
CREATE USER mu_server FOR LOGIN mu_server;
-- Dar permisos de propietario de la base (necesario para el MuServer)
EXEC sp_addrolemember 'db_owner', 'mu_server';
CONTRASEÑA SEGURA:
→ Al menos 12 caracteres
→ Incluye mayúsculas, minúsculas, números y símbolos
→ No uses palabras del diccionario
→ Anótala en un lugar seguro — necesitarás esta contraseña en los archivos de configuración del MuServer
CONFIGURAR EL USUARIO EN LOS ARCHIVOS DEL MUSERVER:
→ En los archivos .ini del GameServer, DataServer, y JoinServer: busca la sección de conexión a SQL
→ Cambia UID=sa y PWD=contraseñadesa por UID=mu_server y PWD=TuContraseñaSegura123!
Paso 4 — Configurar la conexión ODBC
QUÉ ES EL ODBC Y CÓMO CONFIGURARLO:
El MuServer se conecta a SQL Server a través de una fuente de datos ODBC (ODBC DSN).
Debes crear esta fuente de datos en el sistema antes de iniciar el MuServer.
ABRIR EL ADMINISTRADOR ODBC:
→ En Windows: Panel de Control → Herramientas administrativas → Fuentes de datos ODBC
→ O buscar "ODBC" en el menú de inicio → "ODBC Data Sources (32-bit)" o 64-bit según tu MuServer
→ IMPORTANTE: verifica si tu MuServer es de 32-bit o 64-bit — debes crear el DSN en el ODBC correcto
CREAR EL DSN:
1. En el Administrador ODBC: pestaña "System DSN" → "Add..."
2. Selecciona "SQL Server" como driver (o "SQL Server Native Client" si está disponible)
3. Nombre del DSN: usa el nombre exacto que el MuServer espera (consulta los archivos .ini del MuServer — busca el nombre del DSN en la cadena de conexión)
4. Servidor: escribe el nombre del servidor SQL (generalmente es el nombre del PC, o "." o "(local)" para el mismo equipo)
5. Next → Selecciona "With SQL Server authentication using a login ID and password entered by the user"
6. Login ID: mu_server (o el usuario que creaste)
7. Password: tu contraseña
8. Next → Selecciona la base de datos: MuOnline
9. Next → Finish → Clic en "Test Data Source"
EL TEST DEBE DECIR "TESTS COMPLETED SUCCESSFULLY":
→ Si pasa: el ODBC está bien configurado y el MuServer podrá conectar
→ Si falla: verifica usuario/contraseña, nombre del servidor SQL, y que TCP/IP esté habilitado
HABILITAR TCP/IP EN SQL SERVER:
→ Abre "SQL Server Configuration Manager"
→ Navega a: SQL Server Network Configuration → Protocols for [NombreInstancia]
→ TCP/IP: debe estar "Enabled" (si dice "Disabled": clic derecho → Enable)
→ REINICIA el servicio SQL Server después de habilitarlo
Paso 5 — Backup automático de la base de datos
CONFIGURAR BACKUPS AUTOMÁTICOS:
Un backup diario automático es lo mínimo para un servidor activo.
La forma más simple: usar el SQL Server Agent (servicio incluido en SQL Server).
VERIFICAR QUE SQL SERVER AGENT ESTÁ CORRIENDO:
→ En Servicios de Windows: busca "SQL Server Agent"
→ Si está detenido: clic derecho → Start, y cambia el tipo de inicio a "Automatic"
CREAR UN JOB DE BACKUP EN SSMS:
1. En SSMS: SQL Server Agent → Jobs → clic derecho → New Job
2. Nombre: "Backup Diario MuOnline"
3. En Steps: New Step
→ Type: Transact-SQL script
→ Command:
BACKUP DATABASE MuOnline
TO DISK = 'D:\Backups\MuOnline_' + CONVERT(VARCHAR, GETDATE(), 112) + '.bak'
WITH FORMAT, INIT, COMPRESSION;
4. En Schedules: New Schedule
→ Daily, a las 4:00 AM (hora de bajo movimiento)
5. OK para guardar el job
VERIFICAR QUE EL BACKUP FUNCIONA:
→ Después de crear el job: clic derecho → Start Job at Step
→ Verifica que aparece el archivo .bak en la carpeta destino
→ Verifica el tamaño del archivo (debe ser consistente con el tamaño de tu base)
COPIAR EL BACKUP A OTRO LUGAR:
→ Un backup que solo existe en el mismo disco del servidor no te protege de un fallo de disco
→ Script de PowerShell para copiar al terminar el backup:
Copy-Item "D:\Backups\*.bak" "\\OtroEquipo\Backups\"
→ O sube automáticamente a un servicio en la nube (OneDrive, Google Drive, Backblaze B2)
Consulta también el tutorial de instalación de SQL Server 2008 (el proceso paso a paso de instalación de SQL), el tutorial de cómo crear el servidor de MU Online (el proceso completo de montaje incluyendo la parte del SQL), y el tutorial de errores comunes del servidor (si el GameServer sigue dando errores después de configurar el SQL correctamente).
Preguntas frecuentes
¿Por qué MU Online usa SQL Server y no MySQL u otro gestor?
MU Online fue desarrollado por Webzen usando tecnología Microsoft — SQL Server era el estándar de la empresa en el momento del desarrollo (años 2000). Las distribuciones de MuServer para servidores privados heredaron esta dependencia: los procedimientos almacenados, las funciones, y la estructura de las tablas están escritas específicamente para SQL Server. MySQL no entiende el T-SQL de SQL Server directamente. Cambiar a MySQL requeriría reescribir toda la capa de base de datos — algo que prácticamente ninguna distribución hace.
¿Qué es el ODBC y por qué lo necesita MuServer?
ODBC (Open Database Connectivity) es una interfaz estándar que permite que aplicaciones como MuServer se conecten a bases de datos de forma estandarizada. El MuServer no habla directamente con SQL Server — habla con el ODBC, y el ODBC habla con SQL Server. Configurar el ODBC correctamente (nombre del DSN, servidor, base de datos, credenciales) es el paso que conecta el MuServer con tus datos. Sin ODBC correctamente configurado: el MuServer no puede arrancar.
¿Tengo que crear el ODBC en todas las máquinas o solo en el servidor?
Solo en la máquina donde corren los ejecutables de MuServer (el servidor del juego). El ODBC se crea localmente en esa máquina. Los jugadores que se conectan al GameServer no necesitan ODBC — ellos se conectan al GameServer directamente, no al SQL.
¿Qué pasa si restauro la base de datos y el servidor ya tenía jugadores?
Si restauras una base de datos más antigua sobre una más nueva: los datos del período intermedio se pierden. Los jugadores que crearon cuenta o progresaron entre el backup y la restauración perderán ese progreso. Por eso es fundamental tener backups frecuentes y confirmar la fecha del backup antes de restaurar. Si el objetivo es 'empezar de cero' (limpiar el servidor): restaurar la base original de la distribución es la forma correcta de hacerlo.