Resultados 1 a 3 de 3
  1. #1
    Developer C++ louis's Avatar



    Data de Ingresso
    Apr 2016
    Posts
    1,681
    Thanks Thanks Given 
    39
    Thanks Thanks Received 
    810
    Thanked in
    67 Posts
    Mencionado
    499 Post(s)
    País
    Brazil

    Cool Deletar contas inativas (modo simples)

    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

  2. #2
    Membro vinybronks's Avatar
    Data de Ingresso
    Sep 2017
    Posts
    159
    Thanks Thanks Given 
    2
    Thanks Thanks Received 
    2
    Thanked in
    1 Post
    Mencionado
    9 Post(s)
    MEU HUMOR
    Bitchy
    País
    Brazil
    Citação Originally Posted by louis Ver Post
    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
    Esta removendo só os personagem as conta continua oque tenho que mudar ?


  3. #3
    Developer C++ louis's Avatar



    Data de Ingresso
    Apr 2016
    Posts
    1,681
    Thanks Thanks Given 
    39
    Thanks Thanks Received 
    810
    Thanked in
    67 Posts
    Mencionado
    499 Post(s)
    País
    Brazil
    O primeiro comando deleta as contas, não tem como, até pq o segundo comando só deleta os personagens se a conta não existir.
    Meu canal no YouTube com vídeos sobre os sistemas que desenvolvo:
    [Somente membros podem ver os links. ]

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • You may not post Resposta(s)
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  •  
Sobre nós
Somos uma comunidade em atividade a 8 anos que aborda assuntos relacionados a games em geral, principalmente games MMORPG. e que busca sempre ajudar os membros através de conteúdos, tutoriais e suporte...
Nossos anunciantes
Hinetworks
VelozHost
InovHost
Rede Sociais