PDA

View Full Version : |Jobs/Query| Deletar contas inativas (Simples e rápido)



louis
14/04/2017, 12:01 PM
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


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


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).



DBCC SHRINKDATABASE (MuOnline, 10)


Após excluir as contas inativas esse comando vai reduzir seu banco.

Créditos:
Louis
Abraço

Rick Barbosa
14/04/2017, 02:45 PM
Opa, estava atrás de uma que excluía contas que não logam há um ano.
você teria uma query pra fazer backup sem gravar por cima?
versão do servidor 97d
sql 2008 r2 enterprise.

louis
14/04/2017, 03:00 PM
Opa, estava atrás de uma que excluía contas que não logam há um ano.
você teria uma query pra fazer backup sem gravar por cima?
versão do servidor 97d
sql 2008 r2 enterprise.


[Only registered and activated users can see links]
[Only registered and activated users can see links]
''''
[Only registered and activated users can see links]

Mude o F:\Backup\Muonline para um local válido no seu computador.