veri silinince firebird dosyası neden küçülmüyor?
veri silinince firebird dosyası neden küçülmüyor?
Soru başlıkta. Firebird veritabanından veri siliyorum fakat veritabanı boyutu küçülmüyor. 50 mblik veritabanını delphide siliyorum.hiç veri kalmıyor. ama yine 50 mb.
Selamlar,
Sweep olayını yapmanız lazım veya BACKUP-RESTORE. Silme işlemi yaptığınızda FB dahil M$-SQL, Interbase, Oracle gibi DB'lerde de DB Boyutu küçülmez.
Kolay Gelsin.
Sweep olayını yapmanız lazım veya BACKUP-RESTORE. Silme işlemi yaptığınızda FB dahil M$-SQL, Interbase, Oracle gibi DB'lerde de DB Boyutu küçülmez.
Kolay Gelsin.
Kuri Yalnız Jedi
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
kusura bakmayın yanlış alana yazmışım.gecenin bi yarısı gözlerimden uyku akarken atınca böyle oluyor:)
Arama yaptım sweep , restore vs. var. Fakat bana garip geldi. Delphide programla veritabanından veri silinince boyutun küçülmesini sağlayamıyor muyuz? ibexpert ile vs. mi yapmam gerekiyor. Yoksa interbaseadminden mi yapılıyor delphi içerisinde.
Eğer böyleyse firebirdün bir eksikliği gibi geldi bana.
Arama yaptım sweep , restore vs. var. Fakat bana garip geldi. Delphide programla veritabanından veri silinince boyutun küçülmesini sağlayamıyor muyuz? ibexpert ile vs. mi yapmam gerekiyor. Yoksa interbaseadminden mi yapılıyor delphi içerisinde.
Eğer böyleyse firebirdün bir eksikliği gibi geldi bana.

SWEEP işlemini GBAK gibi utility'leri var onlarla yapabilirsiniz. Ayrıca SERVER'ı ilgilendiren bir iş olduğu için Client tarafından böyle bir şeyi yapmak çok doğru değil (Yani Administration-yönetsel) bir şey olduğu için programdan bunu yapmak bilmiyorum bana biraz ters.
Ayrıca illa programdan yapmak istiyorum derseniz muhakkak bir yolu vardır ben kullanmadım belki kullanan arkadaşlar olmuş olabilir. Bunun yanı sıra, IB Expert, DBWorkbench gibi toollar bunu yapabildiklerine göre sizin de yapmanız olası (yani ilgili kodu internette araştırırsanız bulabilirsiniz sanırım)
Bunlarla birlikte FB Server'ın Default ayarlarında Sweep Interval diye bir seçeneği vardır ve bu default olarak 20,000'dir. 20,000 Kayıtta bir kendi otomatik sweep yapar.
Kolay gelsin
Ayrıca illa programdan yapmak istiyorum derseniz muhakkak bir yolu vardır ben kullanmadım belki kullanan arkadaşlar olmuş olabilir. Bunun yanı sıra, IB Expert, DBWorkbench gibi toollar bunu yapabildiklerine göre sizin de yapmanız olası (yani ilgili kodu internette araştırırsanız bulabilirsiniz sanırım)
Bunlarla birlikte FB Server'ın Default ayarlarında Sweep Interval diye bir seçeneği vardır ve bu default olarak 20,000'dir. 20,000 Kayıtta bir kendi otomatik sweep yapar.
Kolay gelsin
Kuri Yalnız Jedi
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
eger db boyutu bu kadar takıntı halinde ise
program acılısında biraz beklet db nin backup-restoresini yaparak bir kopyasını cıkart eskisinin uzerine yaz olur biter....
yada ayda bir (her ayın son gunu gibi) calısacak sekilde program icine gomup, kapanısta bu islemi de yaptırabilirsin, aldıgın yedekleri de bir klasorde saklayıp db nin yedeginide almıs olursun....
Ayrıca cok buyuk miktarlarda veri ekleyip silmiyor isen zaten bu islemi ayda yılda bir yapman yeterli
Eger surekli silme ekleme gibi islemler yapıyorsan tasarımını yada db mantıgını bir gozden gecir...
Kolay gelsin
program acılısında biraz beklet db nin backup-restoresini yaparak bir kopyasını cıkart eskisinin uzerine yaz olur biter....
yada ayda bir (her ayın son gunu gibi) calısacak sekilde program icine gomup, kapanısta bu islemi de yaptırabilirsin, aldıgın yedekleri de bir klasorde saklayıp db nin yedeginide almıs olursun....
Ayrıca cok buyuk miktarlarda veri ekleyip silmiyor isen zaten bu islemi ayda yılda bir yapman yeterli
Eger surekli silme ekleme gibi islemler yapıyorsan tasarımını yada db mantıgını bir gozden gecir...
Kolay gelsin
ÜŞENME,ERTELEME,VAZGEÇME