O maior portal de MU Online do Brasil — desde 2003
Tutorial Avançado Tutoriais

Como Migrar Servidor de MU Online entre Diferentes Hostings

Guia completo para migrar seu servidor MU Online entre VPS ou hostings diferentes, incluindo backup do banco de dados SQL Server, arquivos de configuração e checklist de validação pós-migração.

EQ Equipe ViciadosMU · Atualizado em 3 jul 2026 · ⏱ 12 min de leitura

Migrar um servidor de MU Online entre diferentes hostings é uma das tarefas mais críticas na administração de servidores privados. Uma migração mal feita pode resultar em perda de dados de personagens, corrupção de inventários e tempo de inatividade prolongado. Este guia cobre o processo completo, do backup ao teste final.

Pré-requisitos

Antes de iniciar, tenha em mãos:

  • Acesso administrativo (RDP ou SSH) à VPS de origem e à VPS de destino
  • SQL Server Management Studio (SSMS) instalado nas duas máquinas
  • Espaço em disco suficiente no destino (mínimo 2x o tamanho atual dos dados)
  • Janela de manutenção definida (informe seus jogadores com antecedência)
Atenção: Nunca realize backups com o servidor em execução. Feche todos os processos MuServer antes de qualquer operação de backup do banco de dados para evitar inconsistências nos dados de personagens e guilds.

Passo 1: Encerrar o Servidor na Origem

No servidor de origem, encerre os processos na ordem correta:

  1. Feche o GameServer.exe primeiro (aguarde a janela fechar completamente)
  2. Feche o DataServer.exe
  3. Feche o EventServer.exe (se utilizado)
  4. Feche o ConnectServer.exe por último

Confirme que nenhum processo GameServer.exe permanece ativo via Gerenciador de Tarefas ou via PowerShell:

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

Se a lista retornar vazia, prossiga para o próximo passo.


Passo 2: Backup do Banco de Dados SQL Server

Abra o SSMS na VPS de origem e execute o backup completo dos bancos necessários. Os bancos padrão do MuServer Season 6 são MuOnline, Mu_Log e, dependendo da versão, MuWebzen:

-- Backup do banco principal
BACKUP DATABASE [MuOnline]
TO DISK = N'C:\Backup\MuOnline_migração.bak'
WITH FORMAT, INIT, NAME = N'MuOnline-Full Backup', COMPRESSION, STATS = 10;

-- Backup do banco de logs
BACKUP DATABASE [Mu_Log]
TO DISK = N'C:\Backup\Mu_Log_migração.bak'
WITH FORMAT, INIT, NAME = N'Mu_Log-Full Backup', COMPRESSION, STATS = 10;

-- Backup do banco web (se existir)
BACKUP DATABASE [MuWebzen]
TO DISK = N'C:\Backup\MuWebzen_migração.bak'
WITH FORMAT, INIT, NAME = N'MuWebzen-Full Backup', COMPRESSION, STATS = 10;
Dica: Use a opção COMPRESSION para reduzir o tamanho dos arquivos .bak em até 60-70%. Em bancos com muitos personagens, isso pode economizar horas de transferência.

Passo 3: Backup dos Arquivos do Servidor

Além do banco de dados, copie toda a estrutura de diretórios do servidor. Os diretórios essenciais são:

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

Use o PowerShell para compactar tudo em um único arquivo:

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

Transfira os arquivos C:\Backup\ para a VPS de destino via SFTP, FileZilla ou RoboCopy:

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

Passo 4: Preparar a VPS de Destino

Na VPS de destino, instale o SQL Server (mesma versão da origem) e configure as dependências:

  1. Instale o SQL Server com autenticação mista (SA habilitado)
  2. Instale o Visual C++ Redistributable compatível com sua versão do MuServer
  3. Instale o .NET Framework necessário (geralmente 3.5 ou 4.0)
  4. Configure o Windows Firewall para liberar as portas:
# Porta do SQL Server
netsh advfirewall firewall add rule name="SQL Server" dir=in action=allow protocol=TCP localport=1433

# Porta do ConnectServer (padrão Season 6)
netsh advfirewall firewall add rule name="ConnectServer" dir=in action=allow protocol=TCP localport=44405

# Porta do GameServer
netsh advfirewall firewall add rule name="GameServer" dir=in action=allow protocol=TCP localport=55901
Nota: As portas 44405 e 55901 são os padrões mais comuns no Season 6, mas verifique seus arquivos ConnectServer.cfg e Setup.ini para confirmar os valores reais do seu servidor.

Passo 5: Restaurar o Banco de Dados na Destino

No SSMS da VPS de destino, restaure os backups:

-- Restaurar banco principal
RESTORE DATABASE [MuOnline]
FROM DISK = N'C:\Backup\MuOnline_migração.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 banco de logs
RESTORE DATABASE [Mu_Log]
FROM DISK = N'C:\Backup\Mu_Log_migração.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;

Após restaurar, recrie o login do SQL Server usado pelo MuServer e associe ao banco:

-- Criar login (substitua 'muserver_user' e 'SuaSenhaForte123!' pelos seus valores)
CREATE LOGIN [muserver_user] WITH PASSWORD = N'SuaSenhaForte123!', CHECK_POLICY = OFF;

-- Mapear ao banco MuOnline
USE [MuOnline];
CREATE USER [muserver_user] FOR LOGIN [muserver_user];
EXEC sp_addrolemember N'db_owner', N'muserver_user';

-- Mapear ao banco Mu_Log
USE [Mu_Log];
CREATE USER [muserver_user] FOR LOGIN [muserver_user];
EXEC sp_addrolemember N'db_owner', N'muserver_user';

Passo 6: Atualizar Configurações com o Novo IP

Este é o passo onde a maioria das migrações falha. Você precisa atualizar o IP em três lugares diferentes:

6.1 — GameServer/Setup.ini

[Connect]
DBAddr=127.0.0.1        ; IP do SQL Server (127.0.0.1 se local)
DBPort=1433
DBID=muserver_user
DBPass=SuaSenhaForte123!

[GameServer]
ServerCode=0
ServerPort=55901
ConnectServerIP=127.0.0.1  ; IP do ConnectServer (local ou IP externo da nova VPS)

6.2 — ConnectServer/ConnectServer.cfg

[CONNECT_SERVER]
Port=44405
MaxUser=10000

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

6.3 — Atualizar tabela no banco de dados

USE [MuOnline];

-- Atualizar IP do servidor na tabela de configuração
UPDATE T_GameServerInfo
SET ServerIp = '0.0.0.0'   -- Use 0.0.0.0 para aceitar todas as interfaces
WHERE ServerCode = 0;

-- Verificar resultado
SELECT ServerCode, ServerIp, ServerPort FROM T_GameServerInfo;
Dica: Definir ServerIp = '0.0.0.0' na tabela T_GameServerInfo evita problemas de binding de IP quando o servidor troca de endereço. O IP externo real é gerenciado pelo ConnectServer.

Passo 7: Descompactar e Posicionar Arquivos do Servidor

# Extrair arquivos do servidor na VPS destino
Expand-Archive -Path "C:\Backup\MuServer_arquivos.zip" -DestinationPath "C:\MuServer\" -Force

Verifique a integridade dos diretórios críticos:

C:\MuServer\GameServer\Data\Events\BloodCastle\    → arquivos .bmd e .bmd2
C:\MuServer\GameServer\Data\Events\DevilSquare\    → arquivos de configuração do evento
C:\MuServer\GameServer\Data\Maps\                  → arquivos de mapa .att e .obj

Passo 8: Inicialização e Validação

Inicie os processos na ordem correta na VPS de destino:

  1. DataServer.exe → aguarde a mensagem "DataServer Started"
  2. EventServer.exe → aguarde conexão confirmada
  3. ConnectServer.exe → aguarde "ConnectServer Ready"
  4. GameServer.exe → aguarde "GameServer Ready" e confirmação de conexão ao SQL

Checklist de Validação Pós-Migração

Execute estas queries para confirmar integridade dos dados:

USE [MuOnline];

-- Verificar total de contas
SELECT COUNT(*) AS TotalContas FROM MEMB_INFO;

-- Verificar total de personagens
SELECT COUNT(*) AS TotalPersonagens FROM Character;

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

-- Testar personagem específico
SELECT Name, cLevel, Money, MapNumber FROM Character WHERE Name = 'NomeDoPersonagem';
Atenção: Se o GameServer iniciar mas desconectar em loop, verifique o arquivo GameServer/Log/GameServer.log. Erros de "DB Connection Failed" indicam problema nas credenciais do Setup.ini. Erros de "ConnectServer Timeout" indicam problema de IP/porta no ConnectServer.cfg.

Troubleshooting Comum

Erro: "Cannot open database MuOnline requested by the login" → O usuário SQL foi criado mas não mapeado ao banco. Execute novamente o bloco CREATE USER e sp_addrolemember do Passo 5.

Erro: "GameServer cannot connect to ConnectServer" → Verifique se o IP no Setup.ini seção [GameServer] campo ConnectServerIP aponta para o IP correto. Em servidores locais use 127.0.0.1.

Personagens aparecem mas inventários estão vazios → Geralmente indica que o banco Mu_Log não foi restaurado ou o DataServer está usando configurações antigas de conexão. Verifique DataServer/DataServer.ini.

Eventos não iniciam nos horários corretos → Compare o fuso horário do Windows entre a VPS antiga e a nova (tzutil /g). Ajuste com tzutil /s "E. South America Standard Time" se necessário.

Perguntas frequentes

Preciso desligar o servidor durante a migração?

Sim. Para garantir consistência do banco de dados, o GameServer, ConnectServer e DataServer devem estar completamente encerrados antes de iniciar o backup do SQL Server. Migrar com o servidor ativo pode resultar em dados corrompidos ou transações incompletas.

Qual versão do SQL Server devo instalar na VPS nova?

Use a mesma versão da VPS de origem sempre que possível. Migrações entre versões (ex: 2008 → 2019) são possíveis, mas exigem verificar compatibilidade de collation (recomenda-se Latin1_General_CI_AS) e restaurar o banco com WITH RECOVERY.

Os IPs dos arquivos de configuração precisam ser todos atualizados?

Sim. Você precisa atualizar ConnectServer/ConnectServer.cfg, GameServer/Data/ServerInfo.cfg e a tabela T_GameServerInfo no banco MuOnline. O IP antigo no ConnectServer não permitirá conexões dos clientes ao novo servidor.

O que fazer se o GameServer não conectar ao SQL Server após a migração?

Verifique o arquivo GameServer/Setup.ini — as entradas DBAddr, DBPort, DBID e DBPass devem refletir as credenciais da nova instância SQL Server. Também verifique se o SQL Server Browser está ativo e se a porta 1433 está liberada no firewall do Windows.

EQ

Equipe ViciadosMU

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

Continue lendo

Artigos relacionados