Tüm Oyuncu Verilerini Temizlemek

Whistle

Ruhsuz :/
Kurucu
Geliştirici
Yardımsever Üye
Mesaj
11.941
Çözümler
567
Beğeni
13.659
Puan
5.915
Ticaret Puanı
2
Merhaba arkadaşlar,
Bu konumuzda query komutlarını kullanarak serverden oyuncu verilerini nasıl silebileceğimizi göstereceğim. Elle tek tek işlemleri gerçekleştirmek sıkıcı olabiliyor. Bu konuyu Yardım - Sunucu Taşıma ve Yedek Kurma Problemi yardım konusunu açan @viquality için yardımcı olması bakımından oluşturuyorum.

Aşağıda vereceğim query komutları oyundaki tüm oyuncu verilerini sıfırlayacak ve tablolardaki increment değerleri sıfırlanacaktır.
Eğer ne yaptığınızı bilmiyorsanız kesinlikle yedek alın. Hangi tabloların ne işe yaradığını daha önce açtığım şu Metin2 Veritabanı Yapısı konuda anlatmıştım.

Uyarı: Bu komutlar tüm oyuncu ve lonca verilerini temizleyecektir ve bir kere çalıştırıldığında geri alamazsınız. Bu yüzden kesinlikle yedek alın. Komutları çalıştırmadan önce oyunu kapatmayı unutmayınız. Açık bir serverde bu komutları çalıştırırsanız oyunun hafızasında bulunan veriler tekrar kayıt edeceği için temizlik işlemi tam olarak yapılmayacaktır.

account veritabanındaki tabloların temizlenmesi için;
SQL:
Genişlet Daralt Kopyala
TRUNCATE TABLE account.account;

common veritabanındaki tabloların temizlenmesi için;
SQL:
Genişlet Daralt Kopyala
TRUNCATE TABLE common.gmhost;
TRUNCATE TABLE common.gmlist;

log veritabanındaki tabloların temizlenmesi için;
SQL:
Genişlet Daralt Kopyala
TRUNCATE TABLE log.bootlog;
TRUNCATE TABLE log.change_name;
TRUNCATE TABLE log.command_log;
TRUNCATE TABLE log.cube;
TRUNCATE TABLE log.dragon_slay_log;
TRUNCATE TABLE log.exo_bank_log;
TRUNCATE TABLE log.fish_log;
TRUNCATE TABLE log.goldlog;
TRUNCATE TABLE log.hack_crc_log;
TRUNCATE TABLE log.hack_log;
TRUNCATE TABLE log.hackshield_log;
TRUNCATE TABLE log.ingame_ban_log;
TRUNCATE TABLE log.levellog;
TRUNCATE TABLE log.log;
TRUNCATE TABLE log.loginlog;
TRUNCATE TABLE log.loginlog2;
TRUNCATE TABLE log.money_log;
TRUNCATE TABLE log.quest_reward_log;
TRUNCATE TABLE log.refinelog;
TRUNCATE TABLE log.shout_log;
TRUNCATE TABLE log.speed_hack;
-- Whistle | MMOTutkunlari.com

player veritabanındaki tabloların temizlenmesi için (tüm oyuncu ve lonca verilerini temizleyecek);
SQL:
Genişlet Daralt Kopyala
TRUNCATE TABLE player.affect;
TRUNCATE TABLE player.dragonsoul_items;
TRUNCATE TABLE player.guild;
TRUNCATE TABLE player.guild_comment;
TRUNCATE TABLE player.guild_grade;
TRUNCATE TABLE player.guild_member;
TRUNCATE TABLE player.guild_tournement;
TRUNCATE TABLE player.guild_war;
TRUNCATE TABLE player.guild_war_bet;
TRUNCATE TABLE player.guild_war_reservation;
TRUNCATE TABLE player.horse_name;
TRUNCATE TABLE player.item;
TRUNCATE TABLE player.item_award;
UPDATE player.land SET guild_id = 0; -- Alinmis olan lonca arazilerini temizler. -Wh
TRUNCATE TABLE player.marriage;
TRUNCATE TABLE player.messenger_list;
TRUNCATE TABLE player.myshop_pricelist;
TRUNCATE TABLE player.object;
TRUNCATE TABLE player.player;
TRUNCATE TABLE player.player_deleted;
TRUNCATE TABLE player.player_index;
DELETE FROM player.quest WHERE dwPID != 0; -- Oyuncuların quest kayitlarini temizler. -Wh
TRUNCATE TABLE player.safebox;
-- Whistle | MMOTutkunlari.com
 
Paylaşım için teşekkürler. Çok fazla soran oluyordu :D
 
Bende sürekli el ile temizlemekten yorulmuştum. Yardım konusunu görünce en iyisini query komutunu oluşturum dedim. Sadece tek yapılması gereken kopyalamak ve query'i çalıştırmak.

Konudaki yazılar fazla olduğu için gözden kaçıranlar olabilir. Yine tekrar edelim. :)
Yedek almadan kesinlikle bu işlemleri yapmasınlar. Bu komutları çalıştırmak içinde oyunlarını kapatmaları gerekiyor.
 
Tabloların yapısını bozmadan içeriğindeki tüm verileri siler. increment bilgilerini de sıfırlar
 
Navicat programı kullanıyorsanız query bölümünden
 
Geri
Üst