![]() |
Datenbank: Firebird • Version: 1.5 • Zugriff über: ZEOS
Firebird DB Größe nach löschen von Sätzen gleichgross ?
Firebird-Experten gefragt
ich habe heute mal eine Firebird Datenbank(fdb) bereinigt, Größe vorher ca. 149 MB, dann habe ich über 130.000 Datensätze exportiert und danach gelöscht, trotzdem ist die Gesamtgröße gleich geblieben. Gibt es hierfür eine Erklärung ? mfg nachtstreuner |
Re: Firebird DB Größe nach löschen von Sätzen gleichgross ?
Ja, es wird nicht wirklich gelöscht sondern nur markiert. Führe mal ein Datenbank-Sweep oder ein Backup/Restore durch
|
Re: Firebird DB Größe nach löschen von Sätzen gleichgross ?
Danke mKinzler,
hab ich mir fast gedacht, wie beim alten dBase ! ich habe den EMS Manager zum löschen benutzt, wie führe ich da ein Sweep aus ? mfg nachtstreuner |
Re: Firebird DB Größe nach löschen von Sätzen gleichgross ?
Ich kenne den EMS nicht, nach dem Screenshot könnte es sich unter Services verbergen
|
Re: Firebird DB Größe nach löschen von Sätzen gleichgross ?
Hallo mKinzler
der EMS Firebird Manager ist ein externes Tool, um Firebird-DBs anzulegen, zu löschen und verschiedene Transaktionen auszuführen. An und für sich ein sehr gutes Admin-Tool. Habe jetzt auch die Datenbankgröße reduzieren können, nach deinem Hinweis, von 149 MB auf 10 MB. Für alle die den EMS benutzen. 1. Schritt - nicht mehr benötigte Datensätze exportieren bzw. gleich löschen 2. Schritt - unter Dienste ein Datenbank-Backup starten 3. Schritt - Die Datenbank runterfahren, nicht den EMS beenden, wenn die DB nicht runtergefahren wird, kommt es zu einer Fehlermeldung beim Restore, DB in use. 4. Schritt - nachdem die DB heruntergefahren wurde, unter Dienste Datenbank Restore aufrufen, dort das vorher angelegte BACKUP aufrufen und Restore starten und siehe da (ALLES wird GUT). Danke an mKinzler und das DP Team mfg nachtstreuner |
Re: Firebird DB Größe nach löschen von Sätzen gleichgross ?
Dir ist aber klar, dass das absolut nicht notwendig sein sollte?
Der Platz wird vom DBMS wiederverwendet. Wenn du also später Daten hinzufügst, muss die Datei nicht vergrößert werden. Vergrößern von Dateien ist immer mit einem Performanceeinbruch verbunden, deshalb lässt FB die Dateien in der Größe. Bei dBase musste man tatsächlich regelmäßig verkleinern. Bei Firebird muss man eigentlich bis auf das normale, regelmäßige Backup gar nix machen. |
Re: Firebird DB Größe nach löschen von Sätzen gleichgross ?
Zitat:
|
Re: Firebird DB Größe nach löschen von Sätzen gleichgross ?
Zitat:
Wahrscheinlich will er die datenbank kleiner bekommen damit sie noch so viel platz verbraucht. |
Re: Firebird DB Größe nach löschen von Sätzen gleichgross ?
Zitat:
|
Re: Firebird DB Größe nach löschen von Sätzen gleichgross ?
Ich kenne die interne Struktur von FB nicht, aber normalerweise ist eine regelmäßige Seitenreorganisation für eine performante DB unabdingbar. In Abhängigkeit von der Fetchengine sowie dem Pagemanager kann es zu drastischen Performancegewinnen kommen, wenn logisch zusammenhängende Seiten bei einem Reinigungslauf, der über das reine Verkleinern hinausgeht, auch "nebeneinander" abgelegt werden.
Unter Windows gibt es das Scatter/Gather-IO, bei dem bis zu 8 Seiten in einem Wisch in den Speicher geladen bzw. geschrieben werden. Zumindest MS-SQL sortiert daher vorher (während einer Reorganisation) die Seiten so, das die zu einer DB/Tabelle gehörenden Daten schneller geladen werden. Wie das bei Firebird ist, weiss ich jedoch nicht, es würde micht jedoch nicht wundern, wenn dort eine ähnliche Organisation und Strukur vorhanden ist. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:26 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz