Database cleaning

Aus Wiki - Heidler Strichcode GmbH
Zur Navigation springen Zur Suche springen


 

Database cleaning


For performance reasons, the productive database should be cleaned up in terms of content and the number of records posted. Only the most recent shipping data from a specific period in the database.
Access to older data for information research purposes is guaranteed by prior storage of a copy of the database in an archive directory.
 


Method

All steps must be performed on the server 

  • Check available disk space with the HVS32 directory. Temporarily three times the current database size (HVS32.FDB) should be available as free storage space.
  • Terminate all running HVS32 dispatch programs, if available also the currently running monitoring instances
  • Rename the HVS32.FDB file in the HVS32\DATABASE directory to HVS32AKT.FDB as a test. If this is possible, no more processes are accessing the database and you can continue
  • Copy the content of "clear.zip" into the \DATABASE directory
  • Copy the HVS32AKT.FDB file to the HVS32\ARCHIV folder and rename it to HVS32_jjjjmmdd.FDB. For the sake of clarification, the intended cleansing date should be used here for naming (i.e. the date by which the shipping data should later be cleaned)
  • Rename the original file in the HVS32\DATABASE folder to HVS32.FDB and restart the Firebird services
  • Switch to the DOS prompt and navigate to the HVS32\DATABASE directory
  • The clear program must be called with 4 parameters:
    clear <Starting date-Cleanup limit Format yyyy.mm.tt> <Print date-print date f. Einlagerungen Format yyyy.mm.tt> <Datenbankuser> <Datenbankpasswort>Bsp: clear 2006.01.01 2006.01.01 dbUser dbPasswort


Parameter Erläuterung

  • Ausgangsdatum-Bereinigungsgrenze: Datum bis zu dem alle verbuchten Packstücke mit älterem Ausgangsdatum gelöscht werden
  • Druckdatum-Bereinigungsgrenze: Datum bis zu dem alle verbuchten Packstücke ohne Ausgangsdatum (d.h. mit Status Eingelagert) mit älterem Druckdatum gelöscht werden.
  • Datenbankuser: Bitte beim Support erfragen
  • Datenbankpasswort: Bitte beim Support erfragen



Programmablauf

Der vorhergehende Aufruf ist der letzte Schritt, der vom Benutzer interaktiv durchgeführt werden muss. Die folgenden Vorgänge laufen automatisch ab. Allerdings sollte anhand der Bildschirmmeldungen noch überprüft werden, ob mit dem eingegebenen Benutzer/Passwort die Anmeldung auf der Datenbank möglich ist.

  • Bereinigung der Vormerkpackstück-Tabelle
  • Bereinigung der Vormerklieferung-Tabelle
  • Durchlauf durch die verbuchten Versanddaten und Löschvorgang anhand der eingegebenen Datumsgrenzen, hier können vorallem die Einträge 
    „writing data for table VERSANDEINHEIT”
    „writing data for table ABRECHNUNGSEINHEIT”
    „writing data for table LIEFERUNG”
    einige Zeit in Anspruch nehmen, ohne dass ein sichtbarer Fortschritt zu verzeichnen ist. Dies ist kein Fehler im Ablauf, sondern das Übergehen der angelöschten Sätze benötigt hier entsprechende Zeit.
  • Backup-Auslagerung in eine temporäre Auslagerungsdatei mit Endung GBAK
  • Bildung einer neuen temporären Datenbank RESTORED_HVS32.FDB durch Restore der
  • Backup-Auslagerung (um eine Verkleinerung der Datenbank zu erreichen.)
  • Nach erfolgreichem Restore Umbenennung von HVS32.FDB in HVS32.FDB.tt_mm_jj_hh_nn_ss.BAK
  • Umbenennung von RESTORED_HVS32.FDB in HVS32.FDB


Am Ende des Clear Programmes wird eine Umbenennung der Datenbank vorgenommen. Dieser Schritt funktioniert manchmal bei sehr großen Datenbanken nicht. Sollte dies der Fall sein, hat die Datenbank (HVS32.fdb) nach der Bereinigung noch die gleich Größe wie davor.
Trifft dies zu, gibt es im Ordner Database noch eine RESTORED_Hvs§.fdb.TEMP die dann manuell in HVS32.fdb umbenannt werden muss. Sollte dieser Vorgang nicht gemacht werden, wird auf der alten Datenbank weiter gearbeitet und man muss das Clear Programm erneut ausführen.

 

 

Datenbankbereinigung (automatisch)

Eine Erläuterung zu dem Zusatzmodul/Erweiterungsmodul HVS32 Datenbak Archivierungs Dienst finde Sie hier