PROSEDÜR Gelişmiş Database Temizleme Ve Sıfırlama Scripti | V18Xx, V19Xx, V21Xx

  • Konuyu Başlatan Konuyu Başlatan Prepective
  • Başlangıç tarihi Başlangıç tarihi
  • Okuma süresi: 2:32

Prepective

Admin
Admin
Moderatör
Puan 0
Çözümler 0
Katılım
18 Ocak 2025
Mesajlar
52
Tepkime puanı
2
Konum
Bursa
Web sitesi
ko-turkey.net
@Prepective
Konu Sahibi
Merhaba değerli KO-TURKEY üyeleri,


Knight Online sunucularınızı temiz ve hatasız bir şekilde sıfırlamak mı istiyorsunuz? Özellikle v18xx sürümleri başta olmak üzere, birçok versiyonda veritabanını (database) sıfırlarken tablo kalıntıları veya veri hataları ile karşılaşmak oldukça yaygın.


Bu paylaşımda, tam kapsamlı bir database temizleme prosedürü hazırladım. Script, özellikle ACCOUNT, USERDATA, ITEM, KNIGHTS, PUS gibi kritik tabloları temizleyerek, sistemin kararlı bir şekilde yeniden başlatılmasına yardımcı olur.




⚠️ Dikkat Edilmesi Gerekenler:​


  • Bu prosedür geri dönüşü olmayan işlemler içerir. Mutlaka öncesinde veritabanınızın yedeğini alın!
  • Bazı tablolar sizin veritabanınızda bulunmayabilir. Bu durumlarda hata alırsanız, ilgili satırı silebilir veya başındaki TRUNCATE komutunu geçici olarak kaldırabilirsiniz.
  • Quary Analyzer veya SQL Server Management Studio üzerinden çalıştırılabilir.
  • Özellikle 18xx, 19xx, 21xx sürümler için test edilmiştir.



⚙️ Kullanım Talimatı:​


Aşağıdaki scripti olduğu gibi çalıştırabilirsiniz:

SQL:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE [dbo].[KOYARDIM]
AS

TRUNCATE TABLE ACCOUNT_CHAR
TRUNCATE TABLE BATTLE
TRUNCATE TABLE CURRENTUSER
TRUNCATE TABLE DELLOS_TAX
TRUNCATE TABLE USER_ACHIEVE_MAIN
TRUNCATE TABLE FRIEND_LIST
TRUNCATE TABLE ITEMLER
TRUNCATE TABLE KING_CANDIDACY_NOTICE_BOARD
TRUNCATE TABLE KING_ELECTION_LIST
TRUNCATE TABLE KING_NOMINATION_LIST
TRUNCATE TABLE KNIGHTS
TRUNCATE TABLE KNIGHTS_ALLIANCE
TRUNCATE TABLE KNIGHTS_RATING
TRUNCATE TABLE KNIGHTS_USER
TRUNCATE TABLE MAIL_BOX
TRUNCATE TABLE RENTAL_ITEM
TRUNCATE TABLE RENTAL_ITEM_LIST
TRUNCATE TABLE TB_USER
TRUNCATE TABLE USER_RENTAL_ITEM
TRUNCATE TABLE USER_SAVED_MAGIC
TRUNCATE TABLE USERDATA
TRUNCATE TABLE USERDATA_SKILLSHORTCUT
TRUNCATE TABLE USER_DAILY_OP
TRUNCATE TABLE WAREHOUSE
TRUNCATE TABLE WAREHOUSE_ITEMLER
TRUNCATE TABLE VIP_WAREHOUSE
TRUNCATE TABLE WEB_ITEMMALL
TRUNCATE TABLE SEALED_ITEMS
TRUNCATE TABLE USER_SEAL
TRUNCATE TABLE PUS_BUYITEM
TRUNCATE TABLE PUS_LOG
TRUNCATE TABLE PUS_SESSION
TRUNCATE TABLE ACCOUNT_IP_ADRESS
TRUNCATE TABLE USER_NATIONTRANSFERDATA

UPDATE KNIGHTS_SIEGE_WARFARE SET sMasterKnights = 0
UPDATE KING_SYSTEM
    SET strKingName = '',
        byType = '',
        byTerritoryTariff = 0,
        nTerritoryTax = 0,
        nNationalTreasury = 0
UPDATE KING_CANDIDACY_NOTICE_BOARD SET strUserID = ''
UPDATE USER_KNIGHTS_RANK
    SET strElmoUserID = NULL,
        strElmoKnightsName = NULL,
        nElmoLoyalty = 0,
        strKarusUserID = NULL,
        strKarusKnightsName = NULL,
        nKarusLoyalty = 0
UPDATE USER_PERSONAL_RANK
    SET strElmoUserID = NULL,
        nElmoLoyaltyMonthly = 0,
        strKarusUserID = NULL,
        nKarusLoyaltyMonthly = 0


✅ Avantajları:​

  • Gereksiz kayıtları sıfırlar ve sistem kaynaklarını boşaltır.
  • Server başlangıcında olası bug’ların önüne geçer.
  • Karakter, lonca, pus, depo, posta vb. tüm önemli alanları sıfırlar.



🎯 Öneri:​


Bu prosedürü, sunucuyu resetlemeden veya test aşamasına geçmeden önce bir defaya mahsus olarak çalıştırmanız yeterlidir. Daha sonra tekrar çalıştırmanız gerekmez (zaten boş tablolar hata vermez).
 
Geri
Üst