O maior portal de MU Online do Brasil — desde 2003
Tutorial Intermediário Servidor

Como fazer backup do banco de dados do servidor de MU Online

Configure backups automáticos do SQL Server, aprenda a restaurar e mantenha uma política de retenção — para nunca perder o progresso dos jogadores.

EQ Equipe ViciadosMU · Atualizado em 1 jul 2026 · ⏱ 20 min de leitura
Resposta rápida

Um servidor sem backup é um servidor que vai perder dados em algum momento — falha de hardware, invasão, erro humano, atualização que deu errado. A pergunta nunca é se, é quando. Com backup configurado, qualquer problema se resolve em minutos. Sem backup, é reconstruir do zero.

Um servidor sem backup é um servidor que vai perder dados em algum momento — falha de hardware, invasão, erro humano, atualização que deu errado. A pergunta nunca é se, é quando. Com backup configurado, qualquer problema se resolve em minutos. Sem backup, é reconstruir do zero.

O que precisa ser copiado

O quePor quêFrequência
Banco MuOnline (SQL Server)Contas, personagens, itens, guildsA cada 2-4 horas
Banco MuCastleSiege (se separado)Estado do Castle SiegeDiário
Arquivos .ini do MuServerConfigurações de taxa, eventos, IPsA cada mudança
Pasta Data/ do GameServerMonstros, drops, mapasA cada mudança
Arquivos do sitePHP, HTML, config do siteA cada mudança

O mais crítico é sempre o banco SQL — é onde ficam as horas de jogo dos seus jogadores.

Método 1 — Backup manual pelo SSMS

Para entender o processo antes de automatizar:

Backup Full pelo SSMS

  1. Abra o SQL Server Management Studio;
  2. Conecte com o sa;
  3. Expanda Databases, clique com o direito em MuOnline;
  4. Selecione Tasks → Back Up...;
  5. Na janela de backup:
  • Backup type: Full
  • Backup to: clique em Add..., escolha o caminho e nome do arquivo:

D:\Backups\MuOnline_20260701_0200.bak

  • Marque Overwrite all existing backup sets (para não acumular no mesmo arquivo)
  1. Clique OK → aguarde "The backup of database 'MuOnline' completed successfully."

Via query SQL (mais rápido para usar em scripts)

-- Backup Full
BACKUP DATABASE MuOnline
TO DISK = 'D:\Backups\MuOnline_Full.bak'
WITH FORMAT, INIT, COMPRESSION,
     NAME = 'MuOnline Full Backup',
     STATS = 10;
GO

-- Backup Differential (só o que mudou desde o último Full)
BACKUP DATABASE MuOnline
TO DISK = 'D:\Backups\MuOnline_Diff.bak'
WITH DIFFERENTIAL, COMPRESSION,
     NAME = 'MuOnline Differential Backup';
GO
Nota: A opção COMPRESSION reduz o tamanho do arquivo de backup em 60-80%. Disponível a partir do SQL Server 2008 Enterprise/Standard. Na edição Express não está disponível.

Método 2 — Backup automático com SQL Server Agent

O SQL Server Agent é o agendador nativo do SQL Server. Ideal para automatizar backups sem depender de ferramentas externas.

Nota: O SQL Server Agent não está disponível na edição Express. Se você usa Express, veja o Método 3 abaixo (bat + Agendador do Windows).

Verificar se o SQL Agent está rodando

No SSMS, olhe no Object Explorer: expanda a instância e procure SQL Server Agent. Se tiver um X vermelho, clique com o direito → Start.

No services.msc, o serviço se chama SQL Server Agent (MSSQLSERVER) — configure para Automatic para iniciar com o Windows.

Criar um Job de backup

  1. No SSMS, expanda SQL Server Agent → Jobs;
  2. Clique com o direito em Jobs → New Job...;
  3. Na aba General:
  • Name: Backup MuOnline Full Diario
  1. Na aba Steps:
  • Clique em New...;
  • Step name: Fazer Backup Full
  • Type: Transact-SQL script (T-SQL)
  • Database: master
  • Command:

```sql DECLARE @path NVARCHAR(500); DECLARE @filename NVARCHAR(200); SET @filename = 'MuOnline_Full_' + CONVERT(VARCHAR, GETDATE(), 112) + '.bak'; SET @path = 'D:\Backups\' + @filename;

BACKUP DATABASE MuOnline TO DISK = @path WITH FORMAT, INIT, COMPRESSION, NAME = 'MuOnline Full Backup'; ```

  • Clique OK;
  1. Na aba Schedules:
  • Clique em New...;
  • Name: Todo dia às 04:00
  • Schedule type: Recurring
  • Frequency: Daily
  • Daily frequency: Occurs once at 4:00 AM
  • Clique OK;
  1. Na aba Notifications (opcional):
  • Marque E-mail e configure para notificar em falha;
  1. Clique OK para criar o Job.

Job de backup Differential a cada 2 horas

Crie um segundo Job para backups diferenciais mais frequentes:

-- T-SQL para backup differential com timestamp
DECLARE @path NVARCHAR(500);
DECLARE @filename NVARCHAR(200);
SET @filename = 'MuOnline_Diff_' + CONVERT(VARCHAR, GETDATE(), 112) + '_' + 
                REPLACE(CONVERT(VARCHAR, GETDATE(), 108), ':', '') + '.bak';
SET @path = 'D:\Backups\Diff\' + @filename;

BACKUP DATABASE MuOnline
TO DISK = @path
WITH DIFFERENTIAL, COMPRESSION,
     NAME = 'MuOnline Differential Backup';

Schedule: a cada 2 horas (Occurs every 2 hours na configuração do Agendador).

Método 3 — Script .bat com Agendador do Windows (para SQL Express)

Se você usa SQL Server Express (que não tem SQL Agent), use um script bat agendado:

Criar o script de backup

Crie o arquivo C:\Scripts\backup_mu.bat:

@echo off
setlocal

REM === Configurações ===
set SQLSERVER=localhost
set DATABASE=MuOnline
set SQLUSER=sa
set SQLPASS=SuaSenhaForteAqui
set BACKUPDIR=D:\Backups

REM === Data e hora para o nome do arquivo ===
for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do set "dt=%%a"
set DATE=%dt:~0,8%
set TIME=%dt:~8,6%
set FILENAME=%BACKUPDIR%\MuOnline_Full_%DATE%_%TIME%.bak

REM === Executar backup via sqlcmd ===
sqlcmd -S %SQLSERVER% -U %SQLUSER% -P %SQLPASS% -Q "BACKUP DATABASE %DATABASE% TO DISK='%FILENAME%' WITH FORMAT, INIT"

REM === Log ===
echo Backup concluido: %FILENAME% >> %BACKUPDIR%\backup_log.txt
echo %DATE% %TIME% >> %BACKUPDIR%\backup_log.txt

endlocal

Agendar o script

  1. Pesquise Agendador de Tarefas no menu Iniciar;
  2. Clique em Criar Tarefa...;
  3. Geral: nome Backup MuOnline Diario, marque Executar com os mais altos privilégios;
  4. Disparadores: Novo... → Diário → às 04:00;
  5. Ações: Novo... → Iniciar um programa → C:\Scripts\backup_mu.bat;
  6. Clique OK.

Método 4 — Backup para a nuvem (Google Drive / Mega)

Para backup offsite automatizado, combine o script bat com rclone (ferramenta gratuita de sync para nuvem):

Instalar e configurar o rclone

  1. Baixe o rclone de rclone.org (versão Windows);
  2. Execute: rclone config e siga o assistente para configurar o Google Drive (ou Mega, Backblaze, etc.);
  3. Após configurar, faça sync dos backups:
REM === Sync para Google Drive (adicionar ao final do backup_mu.bat) ===
"C:\rclone\rclone.exe" sync D:\Backups gdrive:mu-backups --min-age 1s

Isso envia automaticamente os novos backups para o Google Drive após cada backup local.

Política de retenção — quantos backups guardar

Guardar todo backup infinitamente ocupa muito espaço. Uma política razoável:

TipoGuardar porQuando deletar
Full diário7 diasArquivos mais velhos que 7 dias
Differential24 horasArquivos mais velhos que 1 dia
Backups especiais (antes de eventos, patches)IndefinidoManualmente

Script para limpar backups antigos:

REM === Deletar backups Full mais velhos que 7 dias ===
forfiles /p "D:\Backups" /s /m MuOnline_Full_*.bak /d -7 /c "cmd /c del @path"

REM === Deletar backups Differential mais velhos que 1 dia ===
forfiles /p "D:\Backups\Diff" /s /m MuOnline_Diff_*.bak /d -1 /c "cmd /c del @path"

Como restaurar um backup

Restaurar via SSMS

  1. Clique com o direito em Databases → Restore Database...;
  2. Source: Device → Add → selecione o .bak;
  3. Na aba Options:
  • Marque Overwrite the existing database;
  • Recovery state: RESTORE WITH RECOVERY (banco fica online após restore);
  1. Clique OK.

Restaurar via query (mais rápido)

-- Primeiro colocar o banco em modo single user (forçar desconexão)
ALTER DATABASE MuOnline SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
GO

-- Restaurar
RESTORE DATABASE MuOnline
FROM DISK = 'D:\Backups\MuOnline_Full_20260701_0400.bak'
WITH REPLACE, RECOVERY;
GO

-- Voltar ao modo multi user
ALTER DATABASE MuOnline SET MULTI_USER;
GO
Atenção: Restaurar sobrescreve o banco atual com o backup. Todos os dados posteriores ao backup são perdidos. Tenha certeza de que é isso que quer antes de executar.

Restaurar para um banco de teste (sem afetar o servidor ativo)

-- Restaurar com outro nome para verificar o conteúdo sem afetar o banco em produção
RESTORE DATABASE MuOnline_Restaurado
FROM DISK = 'D:\Backups\MuOnline_Full_20260701_0400.bak'
WITH MOVE 'MuOnline_Data' TO 'C:\SQL\MuOnline_Restaurado.mdf',
     MOVE 'MuOnline_Log' TO 'C:\SQL\MuOnline_Restaurado_log.ldf',
     RECOVERY;

Verificar a integridade dos backups

Um backup corrompido descoberto na hora da crise é o pior cenário. Verifique periodicamente:

-- Verificar integridade do arquivo de backup (sem restaurar)
RESTORE VERIFYONLY
FROM DISK = 'D:\Backups\MuOnline_Full_20260701_0400.bak';
-- Deve retornar: "The backup set on file 1 is valid."

Plano de resposta a desastres

Defina antes que algo aconteça:

CENÁRIO 1 — Banco corrompido / erro grave
  1. Parar todos os serviços do MuServer
  2. Identificar o backup mais recente válido
  3. Restaurar (RESTORE DATABASE com REPLACE)
  4. Reiniciar os serviços
  5. Comunicar jogadores sobre possível rollback

CENÁRIO 2 — Servidor invadido / dados deletados
  1. Desligar o servidor da internet imediatamente (bloquear todas as portas)
  2. Identificar como a invasão aconteceu (logs do sistema, do SQL, do site)
  3. Restaurar o banco de um backup pré-invasão
  4. Corrigir a vulnerabilidade que permitiu a invasão
  5. Alterar TODAS as senhas (SQL, FTP, painel, site)
  6. Reabrir o servidor apenas após corrigir o problema

CENÁRIO 3 — Falha de hardware (disco)
  1. Provisionar novo servidor/disco
  2. Reinstalar Windows + SQL Server
  3. Copiar backup do armazenamento offsite
  4. Restaurar banco
  5. Restaurar configurações do MuServer
  6. Testar e reabrir
Dica: Teste o seu plano de recuperação antes de precisar dele. Simule uma restauração num domingo de manhã (baixo movimento) para garantir que tudo funciona e que você sabe o que fazer quando a pressão for real.

Tempo estimado de recuperação

Tamanho do bancoBackup Full localBackup Full de nuvem
Pequeno (< 1 GB)2-5 minutos10-30 minutos
Médio (1-5 GB)5-15 minutos30-90 minutos
Grande (5-20 GB)15-45 minutos1-4 horas

Pense nesses tempos quando decidir a frequência de backup — é quanto de progresso seus jogadores podem perder no pior caso.

Perguntas frequentes

Com que frequência fazer backup?

Para servidores ativos (20+ jogadores), backup a cada 2-4 horas é o ideal. No mínimo, backup diário. Quanto mais movimento no servidor, mais você perde se não tiver backup recente.

Onde guardar os backups?

Nunca apenas no mesmo servidor. Guarde em outro disco, em outro servidor (FTP), ou em nuvem (Google Drive, Mega, Backblaze). Se a máquina quebrar, o backup local some junto.

Backup Full ou Differential?

Full backup salva tudo — é o mais simples. Differential salva apenas o que mudou desde o último Full (arquivo menor). Para servidores de MU, Full diário + Differential a cada 2h é uma política boa.

Como testar se o backup está bom?

Restaure o backup num banco com outro nome (ex: MuOnline_Teste) e verifique se os dados estão intactos. Nunca confie num backup que nunca foi testado.

EQ

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

Continue lendo

Artigos relacionados