Fala povo.

Estou repassando um script que uso nos meus servidores a anos, qualquer dúvida não deixe de perguntar.

**FAÇA BACKUP SEMPRE ANTES DE UTILIZAR**

Execute todos os comandos no seu SQL utilizando a DB MuOnline.

1º passo - Excluir todas as contas com mais de um ano sem logar
Código:
     DELETE from memb_info 
         WHERE exists 
              ( SELECT memb___id 
                          FROM memb_stat 
                                 WHERE memb_info.memb___id = memb_stat.memb___id collate database_default 
                                           AND connecttm < getdate()-365 --Mude 365 para os dias que preferir!
              )
2º passo - Excluir dados das outras tabelas
Código:
 delete from warehouse where not exists ( select memb___id from memb_info where memb_info.memb___id=warehouse.accountid collate database_default)
 delete from character where not exists ( select memb___id from memb_info where memb_info.memb___id=character.accountid collate database_default)
 delete from accountcharacter where not exists ( select memb___id from memb_info where memb_info.memb___id=accountcharacter.id collate database_default)
 delete from vi_curr_info where not exists ( select memb___id from memb_info where memb_info.memb___id=vi_curr_info.memb___id collate database_default)
 delete from memb_stat where not exists ( select memb___id from memb_info where memb_info.memb___id=memb_stat.memb___id collate database_default)

 DELETE Optiondata where (SELECT COUNT(*) FROM character where name = optiondata.Name )=0
*Você deve adicionar outras tabelas que você tenha no seu banco, exemplo: EXT_WAREHOUSE

3º Passo - Reduzir o tamanho do banco

O Shrink é um recurso que nos permite reduzir o tamanho dos arquivos do banco de dados. Esta operação pode ser feita em conjunto (banco de dados inteiro), ou em um arquivo específico (dados ou log).

Código:
 DBCC SHRINKDATABASE (MuOnline, 10)
Após excluir as contas inativas esse comando vai reduzir seu banco.

Créditos:
Louis Mukoreia
Abraço