Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Script pra qual versão do TFS? O que ele vai limpar da database?

Especifique no tópico para o pessoal ficar mais inteirado sobre ele.

Link para o post
Compartilhar em outros sites
4 minutos atrás, Matk disse:

Script pra qual versão do TFS? O que ele vai limpar da database?

Especifique no tópico para o pessoal ficar mais inteirado sobre ele.

Feito!

ichigo.gif
https://github.com/Cjaker/

  , _ ,
 ( o o )
/'` ' `'\                     ESTOU TE OBSERVANDO O_O
|'''''''|
|\\'''//|
   """

 

Link para o post
Compartilhar em outros sites

É ruim executar queries em loop, esse código enorme que vc fez podia ser uma única querie se vc soubesse usar a linguagem SQL. Você tá simplesmente dando SELECT em TUDO e deixando pra filtrar pela linguagem, isso é TÓXICO tanto para o servidor que gasta processo (memória ram) pra fazer esse calculo quanto para o banco de dados que é inundado com queries simultaneas. Aconselho vc ler um pouco sobre SQL e tentar refazer esse código usando uma ou duas queries sem ter que percorrer por um loop. 

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Link para o post
Compartilhar em outros sites

@xWhiteWolf Sim, eu nunca cheguei a me aprofundar em banco de dados, se quiser ajudar nessa fico muito grato :)
 
@Andreeyyy
 

local inactiveMonths = 3 -> Quantos meses o player ficou inativo
local createdMonths = 1 -> Quantos meses a conta foi criada e não possui character criado.

ichigo.gif
https://github.com/Cjaker/

  , _ ,
 ( o o )
/'` ' `'\                     ESTOU TE OBSERVANDO O_O
|'''''''|
|\\'''//|
   """

 

Link para o post
Compartilhar em outros sites
3 hours ago, Cjaker said:

@xWhiteWolf Sim, eu nunca cheguei a me aprofundar em banco de dados, se quiser ajudar nessa fico muito grato :)
 
@Andreeyyy
 


local inactiveMonths = 3 -> Quantos meses o player ficou inativo

local createdMonths = 1 -> Quantos meses a conta foi criada e não possui character criado.

https://www.4shared.com/rar/lw2m5UTtba/Banco_de_Dados.html?

upei todas minhas aulas de banco de dados nesse link aí, dá uma lida e vê se vc consegue refazer :D qualquer coisa posso te ajudar

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Link para o post
Compartilhar em outros sites
  • 2 weeks later...
5 horas atrás, leozincorsair disse:

funciona para 0.3.6?

Versao 1.1 pra cima tem muitas funçoes que nao tem no 54 entao acho que vai bugar nao é certeza,mas antes de fazer deixa backup

O rei de seu proprio destino é aquele que luta pela gloria do amanhã!
Discord : ZoR#9373


 

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.


  • Conteúdo Similar

    • Por luanluciano93
      Olá, esse tutorial é uma parte do tópico principal: "Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04" ... 

      Ele faz parte da 2º instalação da pilha LEMP no Ubuntu 22.04: a MariaDB.
       
      PASSO 1 - COMO INSTALAR O SERVIDOR DE BANCO DE DADOS MariaDB
       
      O MariaDB é um sistema de gerenciamento de banco de dados de código aberto, usado com frequência como uma alternativa ao MySQL. Ele é desenvolvido por ex-membros da equipe do MySQL que estão preocupados que o Oracle possa transformar o MySQL em um produto de código fechado.

      Digite o seguinte comando para instalar o MariaDB no Ubuntu 22.04, após iniciar, é necessário digitar Y para prosseguir ... 
      sudo apt install mariadb-server Depois de instalado, o servidor MariaDB deve ser automaticamente visualizado.
       
      Use o comando a seguir para verificar seu status: 
      sudo systemctl status mariadb Irá aparecer o seguinte resultado:

       
      Como vocês podem ver em verde: active (running), ou seja, está ativo e funcionando.
       
      Você pode também conferir a versão do MariaDB instalado com o comando: 
      mariadb --version Eu obtive como resposta em 05JUL22: mariadb Ver 15.1 Distrib 10.6.7-MariaDB
       
      PASSO 2 - CONFIGURANDO O MARIADB
       
      O próximo passo será executar o script de segurança incluído. Esse script modifica algumas das opções padrões menos seguras referentes, por exemplo, a logins root remotos e usuários de exemplo.
       
      Execute o script de segurança:
      sudo mysql_secure_installation Isso levará você a uma série de prompts onde é possível fazer algumas alterações nas opções de segurança de sua instalação do MariaDB.

      O primeiro prompt pedirá que digite a senha atual do root do banco de dados. Como ainda não configuramos uma senha, pressione ENTER para indicar “nenhuma”,

       
      Em seguida, o sistema irá perguntar se você quer usar o unix_socket, pois ele garante que ninguém possa fazer o login no usuário root do MARIADB sem a devida autorização. Digite que sim (Y)

      Ativar a autenticação unix_socket? [S/n]
       
      Em seguida, digite Y para definir a senha raiz do servidor MariaDB.


      ATENÇÃO: A SENHA QUE VOCÊ DEFINIR SERÁ A SENHA DO SERVIDOR SQL, ELA SERÁ USADA PARA CONEXÃO DO  SITE E DO SERVIDOR AO BANCO DE DADOS! GUARDE-A BEM!

      Em seguida, você pode pressionar ENTER (com ENTER é escolhido a resposta padrão, que sempre é mostrada em maiúsculo. Nesse caso será o Y) para responder a todas as perguntas restantes:


      - Remover usuários anônimos? [Sim/n]
      - Não permitir login root remotamente? [Sim/n]
      - Remover banco de dados de teste e acesso a ele? [Sim/n]
      - Recarregar as tabelas de privilégios garantirá que todas as alterações feitas até agora entrará em vigor imediatamente. Recarregar tabelas de privilégios agora?  [Sim/n]

      Esta etapa é um requisito básico para a segurança do banco de dados MariaDB.
       
      A princípio é isso!
       
      Siga as atualizações no tópico principal: "Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04" ... 
       
       
      Fontes:
      - https://conectandonet.com.br/blog/como-instalar-a-pilha-lemp-no-ubuntu-20-04-server-desktop/
      - https://www.digitalocean.com/community/tutorials/how-to-install-mariadb-on-ubuntu-20-04-pt
       
       
       
       
       
       
    • Por L3K0T
      Olá galera, hoje vim trazer para vocês alguns comandos uteis, pra serem executados no seu banco de dados "Mysql" lá aonde guarda todas as informações do jogo. *"execute o comando, mais antes faça o backup da sua Data Base e lembrando faça isso com o servidor desligado"
       
       
      1° UPDATE `accounts` SET premdays = 0, lastday = 0; - Remove todos os dias VIP ou P.A de todos os players. .
      UPDATE `accounts` SET premdays = 0, lastday = 0;  
      2° UPDATE `accounts` SET `premdays` = `premdays` + 7; - Adiciona +7 dias de VIP ou P.A para todos os players.
      UPDATE `accounts` SET `premdays` = `premdays` + 7;  
      3° UPDATE `players` SET `posx` = 111, `posy` = 222, `posz` = 7; - Manda todos mundo para certa posição do mapa.
      UPDATE `players` SET `posx` = 111, `posy` = 222, `posz` = 7;  
      4° UPDATE `players` SET `blessings` = 0; - Limpa todas as bless de todos os players e se no lugar do 0 você por 31 você adiciona todas as bless;
      UPDATE `players` SET `blessings` = 0;  
      5° DELETE FROM `player_deaths`, `killers`, `player_killers`, `environment_killers`; - Limpa todo o histórico de morte dos players.
      DELETE FROM `player_deaths`, `killers`, `player_killers`, `environment_killers`;  
      6° DELETE FROM `players` WHERE `level` < 50 AND `lastlogin` < UNIX_TIMESTAMP() - 20 * 24 * 60 * 60  - Deleta players que não loga em 20 dias e que são levels -50
      DELETE FROM `players` WHERE `level` < 50 AND `lastlogin` < UNIX_TIMESTAMP() - 20 * 24 * 60 * 60    
      7° UPDATE `players` SET `world_id` = 0; - altera o mundo de todos os players, que é configurado no config.lua do seu servidor, pode 1, 2, 3 etc..
      UPDATE `players` SET `world_id` = 0;  
      8° UPDATE `players` SET `promotion` = 1; - da promotion da vocação para todos os players quando VIP.
      UPDATE `players` SET `promotion` = 1;  
      9° UPDATE `accounts` SET `premiun_points` = `premium_points` +30; - adiciona 30 Premium Points para todos os players.
      UPDATE `accounts` SET `premiun_points` = `premium_points` +30;  
       
      é isso galera, durante os meses eu irei atualizar esse tópico, um multissímo obrigado.
       

    • Por Fir3element
      Reporte qualquer bug encontrado.
       
      - Mudanças:
      * opcode adicionado
      * Monstros andando em cima de corpos
      * War system arrumado
      * Anti-divulgação melhorado
      * Cast system arrumado
      * Crash bugs arrumados
      * Adicionado exhaust ao comprar/vender items
      * Account manager com opção para cidades
      * /ghost stacking arrumado
      * !disband arrumado
      * Erros no linux arrumado
      * Aleta som arrumado
      * Bug nos rings arrumado
      * Adicionado suporte para Visual Studio
      * Remover battle ao entrar em PZ
      * Não pode jogar lixo em casas
      * Salt removido
       
      - Downloads:
      * Distro (x32): https://github.com/Fir3element/binaries/raw/master/x32-windows.zip
      * Distro (x64): https://github.com/Fir3element/binaries/raw/master/x64-windows.zip
      * Requisitos: Microsoft Visual C++ Redistributable Package
      * Source + datapack: https://github.com/Fir3element/3777/archive/refs/heads/main.zip
       
      - Scans:
      * Distro (x32): https://virustotal.com/pt/file/6683a91273b848a39ac21288da9d3abde341436744d6846e35a477c8e7c8f5f7/analysis/1480675335/
      * Distro (x64): https://virustotal.com/pt/file/21028857bb1124f19e0353e7f5775c8f66afc4f87f29df9cf4ab8ca1a046b816/analysis/1480675394/
      * Source + datapack: https://virustotal.com/pt/file/3761b48ee19f3f540d4c4a48c35c73c89a85615876307073494b1dcfed464d36/analysis/1480675473/
    • Por Nightz
      O OT Server Ready (OSR) é um software básico que desenvolvi juntamente com o apoio da 4YouStart feito para auxiliar aqueles que tem mais dificuldade com a parte de infraestrutura.
       
      Veja funcionando:
       
       
      Avisos:
      O software está em BETA. Em caso de qualquer problema envie uma resposta nesse post. Quero lembrar que qualquer cópia dessa postagem sem a devida autorização não é permitida.  
      O OSR instala e configura os seguintes softwares/bibliotecas (visão geral):
       
      - Apache2 - php5 - MySQL 5.5 - phpmyadmin - Todas bibliotecas para compilar/rodar um OT Server O sistema suporta os seguintes sistemas operacionais:
      Debian 7.x Ubuntu 12.x Ubuntu 14.x Para instalar o OT Server Ready, utilize as seguintes instruções:
      Lembrete: utilize-o apenas em um servidor novo, recém formatado.
       
      Para instalar no Debian:
      apt-get update apt-get install -y gcc wget http://scripts.4youstart.com/ot-server-ready-debian chmod 777 ot-server-ready-debian ./ot-server-ready-debian SENHA Para instalar no Ubuntu:
      apt-get update apt-get install -y gcc wget http://scripts.4youstart.com/ot-server-ready-ubuntu chmod 777 ot-server-ready-ubuntu ./ot-server-ready-ubuntu SENHA Substitua a palavra "SENHA" na última linha da instalação pela senha que deseja utilizar no phpmyadmin e MySQL. Recomenda-se que utilize a mesma senha do que a senha do servidor, mas pode utilizar qualquer uma.
       
      Versão atual do Software:
      v0.2 [23/11/2015] Lista de bibliotecas instaladas:
      v0.1: apache2 php5 libapache2-mod-php5 php5-mcrypt mysql-client-5.5 mysql-server-5.5 mysql-common libboost-all-dev libgmp3-dev liblua5.1-0 liblua5.1-0-dev liblua50 liblua50-dev liblualib50 liblualib50-dev lua50 lua5.1 libsqlite0-dev libsqlite3-dev sqlite3 libmysql++-dev libmysqlclient-dev libxml2-dev libxml++2.6-dev cpp gcc g++ make automake autoconf pkg-config subversion liblua5.1-sql-mysql-dev liblua5.1-sql-sqlite3-dev zlib1g-dev zlib1g libcrypto++-dev libcrypto++ libcurl4-openssl-dev phpmyadmin v0.2: zip unzip build-essential libboost-dev libwww-perl ccache libboost-filesystem-dev libboost-regex-dev libboost-system-dev libboost-thread-dev libssl-dev   Façam bom proveito

      Foi anexado ao post o script para ubuntu
      ot-server-ready-ubuntu
    • Por Leu
      Usando o script do Cjaker como base (e a descrição do tópico dele, na cara dura mesmo!), otimizei as operações no banco de dados (tava muito zuado) e adicionei um range de accounts protegidas pra evitar apagar os gms/samples/contas de spoofers do otservlist/etc... ;
      Salve galera, mais um script para quem está precisando dar aquela limpada no banco de dados e otimizar o Servidor.
       
      -- Especificações --
      TFS 1.1+ Objetivo é limpar as contas inativas/vazias e os players Inativos assim removendo os usuários que estão inativos e ocupando espaço no banco de dados.
        -- Instruções --
       
      Em globalevents.xml insira essa linha <globalevent type="startup" name="CleanDatabases" script="cleandatabase.lua" />  
      Crie um script chamado cleandatabase.lua na pasta globalevents/scripts e cole isso dentro dele. --- --- Generated by EmmyLua(https://github.com/EmmyLua) --- Created by leu. --- DateTime: 04/04/18 18:42 --- --[[ Clean Database by Cjaker | Refactor and SQL Optimizations by Leu ]]-- local inactiveMonths = 1 --> Quantos meses o player ficou inativo local createdMonths = 1 --> Quantos meses a conta foi criada e não possui character criado. local protectedAccIdEnd = 20 --ignorar accounts com id <= 20 local function clearInactivePlayers() local inactiveTimestamp = os.time() - (86400 * (inactiveMonths*30)) local totalClear=0 local fromClause = "`players` WHERE `account_id` > ".. protectedAccIdEnd .." AND lastlogin <= "..inactiveTimestamp local resultId = db.storeQuery("SELECT COUNT(*) as num_inativos FROM "..fromClause) if resultId ~= false then totalClear = result.getDataInt(resultId, 'num_inativos') result.free(resultId) if totalClear > 0 then db.query("DELETE FROM "..fromClause) end end return totalClear end local function clearEmptyAccounts() local totalClear = 0 local createdTimestamp = os.time() - (86400 * (createdMonths*30)) local fromClause = "`accounts` ACCS WHERE `id` > ".. protectedAccIdEnd .." AND `creation` <= "..createdTimestamp.." AND (SELECT COUNT(*) from `players` WHERE `account_id` = ACCS.`id`) > 0" local resultId = db.storeQuery("SELECT COUNT(*) as num_inativas FROM "..fromClause) if resultId~= false then totalClear = result.getDataInt(resultId,'num_inativas') result.free(resultId) if totalClear > 0 then db.query("DELETE ACCS FROM "..fromClause) end end return totalClear end function onStartup() print('>> ' ..clearInactivePlayers().. " players inativos deletados.") print('>> ' ..clearEmptyAccounts().. " contas vazias deletadas.") end  
       
      é isso senhores, paganois, flw!
       
      EDIT 24-04-2018: correção DELETE accs QUERY
       
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo