Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Firebird GDB verkleinern (https://www.delphipraxis.net/51250-firebird-gdb-verkleinern.html)

SarDGer 9. Aug 2005 08:31

Datenbank: Firebird • Version: 1.5 • Zugriff über: SQL

Firebird GDB verkleinern
 
Hallo,

mein Problem ist folgendes:
Ich habe eine GDB wo täglich daten eingepflegt werden,
alle 7 tage sollen dann die alten Daten gelöscht werden.
OK - so weit so gut. Das GDB File wird dadurch aber leider
nicht kleiner sondern wächst stetig. Warum ist relativ klar,
weil die Pages nicht mitgelöscht werden. Meine Lösung ist
von daher folgende: Die Metadaten der Datenbankstruktur
extrahieren, die Daten der Datenbank in ein skript exportieren,
eine neue Datenbank mit den Metadaten erzeugen und dann per skript
füllen. Das ganze spiel ist leider recht aufwendig, was noch nicht
so schlimm ist aber es dauert leider auch sehr lange.

Kennt vielleicht jemand eine alternative Lösung?

vielen Dank im vorraus,
Sar

Lemmy 9. Aug 2005 08:35

Re: Firebird GDB verkleinern
 
Hi,

ganz einfach: ein Backup-Restore Zyklus durchführen! Nach der Löschaktion erstellst Du ein Backup der Datenbank und lässt es gleich wieder herstellen. Das hat den Vorteil, dass alle gelöschten Daten aus der Datenbank verschwinden und dass alle Indizes wieder neu aufgebaut werden und die Datenbank (nach umfangriechen Insert/Deleteaktionen) wieder schneller reagiert.

Lemmy

SarDGer 9. Aug 2005 10:15

Re: Firebird GDB verkleinern
 
Hi Lemmy,

erstmal danke für die schnelle Antwort, :)
hilft mir leider nicht, bei 'ner Datenbank von 270MB
dauer das ganze spiel ziemlich lange (ca. 10min). Da geht das mit
dem Skript einiges schneller (ca. 3min).

gruss,
Sar

Lemmy 9. Aug 2005 11:54

Re: Firebird GDB verkleinern
 
Hi,

warum sind die 10 Minuten zu lange? Brauchst Du einen ständigen Zugriff auf die DB?

Lemmy

SarDGer 9. Aug 2005 12:00

Re: Firebird GDB verkleinern
 
@Lemmy, yep, eimal das und ausserdem:
werden täglich neue Daten hinzugefügt,
bei diesem vorgang wird auch das backup durchgeführt,
wenn man dann 10min. warten muss bis mal was passiert
ist das ziemlich nervig.

Gruss,
Sar

Lemmy 9. Aug 2005 13:23

Re: Firebird GDB verkleinern
 
Hi,

gut, dann hast Du vermutlich kaum ne andere Chance. Ich habe mir überlegt mit eine Zweit-DB was zu machen, aber da hast Du immer das Problem, wie Du damit die erste ersetzten kannst. Das geht nur vernünftig (und sicher) über ein Backup-Restore.

Lemmy

SarDGer 9. Aug 2005 13:51

Re: Firebird GDB verkleinern
 
Yep, da bin ich auch gelandet, hehe.
Hab mal rumgebastelt und versucht raus zu bekommen
wo der die ganze Zeit verbrezelt.
Dabei ist mir aufgefallen das er nur ab und zu
so lange braucht !!! Manchmal haut er das ganze
auch in 19sek. durch. Also hab ich untersucht was
den Unterschied ausmacht... Ergebniss: nach dem
Aufbau der gbk kommt noch starting transactions
und dann lange zeit nix! Irgendwann scheint er
dann wieder Lust zu bekommen und läuft dann los...
Danach geht es wieder superschnell... merkwürdig.
Ich bastel da mal noch was dran rum... wenn ich
nämlich den Firebird server abschiesse und die
Applikation neu starte dann geht es auf einmal
innerhalb von 19sek., muss das ganze jetzt nur
noch so hinbekommen das er immer so funktioniert.
Transactions commited und so weiter hab ich
natürlich schon durch.
Bin für jeden Tip dankbar...

Gruss,
Sar

Lemmy 9. Aug 2005 15:04

Re: Firebird GDB verkleinern
 
Hi,

mit welchen Komponenten (BackupService und RestoreService) arbeitest Du - IBX, UIB, FIBPLus,...?? Wenn IBX, dann versuch mal die UIB(kostenlos) zu verwenden (also nur Restore und Backupservice) haben bei mir anstandslos funktioniert. Das mit der langen REstore-Backupzeit kommt mir irgenwie bekannt vor...


Lemmy

http://www.progdigy.com/modules.php?name=UIB

SarDGer 9. Aug 2005 15:12

Re: Firebird GDB verkleinern
 
hehe, danke !

Hab ich allerdings schon, das selbe Problem,
scheint irgent wie am Firebird server zu hängen...

gruss,
Sar

Lemmy 9. Aug 2005 19:07

Re: Firebird GDB verkleinern
 
Mann... Du machst es einem aber wirklich schwer :-)

Viel Glück!

Lemmy

P.S.: Wenn Du ne Lösung für das Problem findest, würde ich mich über ne Nachricht sehr freuen!


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:15 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz