Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

de:userguide:settings:generalsettings:datarestore

Datenbank Wiederherstellung

Im Falle eines schwerwiegenden Störfalles mit Datenverlust muss oftmals die Datenbank des GECAMed Systems wieder wiederhergestellt oder restauriert werden. Dazu benötigt man spezielle Werkzeuge der Datenbank-Administration, welche frei vom Internet heruntergeladen werden können. Es handelt sich um pgAdmin III, das PostgreSQL Standard Administrations-Tool, zu finden unter http://www.pgadmin.org/index.php.

Nach dem Herunterladen und Installieren muss pgAdmin zunächst einmal an die GECAMed Kantenbank angeschlossen werden. Dies setzt voraus, dass eine funktionsfähige PostgreSQL Datenbank für GECMed installiert und konfiguriert ist. Sollte dies nicht der Fall sein, z.B. nach einem Disk Crash oder der Migration auf einen anderen Rechner, muss man zunächst einmal GECAMed komplett neu installieren. Dazu sollte unbedingt die gleiche GECAMed Version installieren, von der auch der zu Wiederherstellung verwendete Backup stammt. Im Allgemeinen ist das die zuletzt in der Arztpraxis benutzte Version, da von dieser auch die neuesten Backups stammen. Sie können Installer der wichtigsten sich im Umlauf befindlichen älteren GECAMed Versionen an folgender Stelle herunterladen.

Im Folgenden gehen wir also davon aus, dass eine operationale PostgreSQL Datenbank für GECAMed vorhanden ist. Unter Windows kann man dies einfach durch das Vorhandensein mehrerer postgres.exe Prozesse überprüfen.

Auf Linux und Mac OS-X kann man mit dies mit einem entsprechenden ps Komanndo überprüfen, z.B. hier auf Mac OS-X 10.4:

vlansantec049:~ santec$ ps -aux | grep postgre
santec   25712   0.5  0.0    27376    420  p1  S+    2:57PM   0:00.01 grep postgre
postgres  1861   0.0  0.3    61376   2924  ??  S    Fri11AM   0:42.35 /Library/PostgreSQL/8.3/bin/postgres -D /Library/PostgreSQL/8.3/data
postgres  1862   0.0  0.0    32608    336  ??  Ss   Fri11AM   0:26.98 postgres: logger process                                                                                                                                              
postgres  1864   0.0  0.8    61428   7956  ??  Ss   Fri11AM   2:32.30 postgres: writer rocess                                                                                                                                              
postgres  1865   0.0  0.1    61376    576  ??  Ss   Fri11AM   1:01.47 postgres: wal writer process                                                                                                                                          
postgres  1866   0.0  0.0    61536    492  ??  Ss   Fri11AM   1:08.90 postgres: autovacuum launcher process                                                                                                                                 
postgres  1867   0.0  0.0    32768    432  ??  Ss   Fri11AM   2:22.52 postgres: stats collector process                                                                                                                                     
postgres 25011   0.0  0.7    62620   7520  ??  Ss   11:30AM   0:01.43 postgres: gecamed gecamed 127.0.0.1(60446) idle                                                                                                                       
postgres 25582   0.0  0.3    41484   2704  ??  SNs   2:16PM   0:00.75 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Support/mdimportserver
postgres 21948   0.0  0.5    62056   5340  ??  Ss    7:35PM   0:02.14 postgres: gecamed gecamed 127.0.0.1(58942) idle 

Der nächste Schritt besteht darin, pgAdmin mit der PostgreSQL Datenbank zu verbinden. Dazu startet man pgAdmin III und konfiguriert zunächst eine neue Datenbankverbindung.

Die einzugebenden Informationen sind:

  • Name: Ein beliebiger Name für die Neue Datenbank-Verbindung (hier: „GECAMed PostgreSQL Server“)
  • Host: „localhost“ oder der Domain-Name bzw. die IP Adresse des Datenbank-Servers im Falle einer ausgelagerten Datenbank
  • Port: „5432“ ist der Standard-Port für eine PostgreSQL DB und bereits ausgefüllt
  • Maintenance DB: postgres ist standard und bereits ausgefüllt
  • Username: Der Datenbank-Benutzername: „gecamed“
  • Password: Passwort für den Datenbank-Benutzer gecamed. Kann aus folgender GECAMed Server-Konfigurationsdatei entnommen weden, die sich unter C:\gecamed\jboss-4.0.5.GA\server\default\deploy\GECAMed-ds.xml befindet (Linux: /usr/local/jboss/server/default/deploy/GECAMed-ds.xml)

Die oben angegebenen Werte sind die Default Werte einer Standard GECAMed Installation. Sollte Ihre GECAMed Installtion davon abweichen können die tatsächlichen Werte ebenfalls aus der oben gezeigten GECAMed-ds.xml Konfigurationsdatei entnommen werden.

Nach dem Bestätigen des Server-Registrations-Dialoges wird eine neue Datenbank-Verbindung eingerichtet. Durch links-Klicken kann man nun in der angeschlossenen Datenbank nach Struktur und Inhalt browsen.

WARNUNG
Mit einem korrekt konfigurierten pgAdmin Zugang zu Ihrer GECAMed Datenbank könne Sie alle wichtigen Funktionen eines PostgreSQL Administrators ausführen. darunter befinden sich auch einige potentiell extrem zerstörerische Operationen wie die „Delete/Drop“ Funktion, mit der Sie sowohl einzelne Teile als auch die gesamte Datenbank mit einem Schlag löschen können. Desweiteren haben Sie über die Browser-Funktionen uneingeschränkten Zugang zu allen sich in GECAMed befindlichen Daten, und können auch diese nach Belieben verändern und löschen.

Ein unsachgemässer Eingriff in die Datenbank kann zu Datenverlusten und schwerwiegenden Funktionsstörungen von GECAMed führen und sollte deshalb nur von ausreichend qualifiziertem Personen durchgeführt werden. Wir verweisen an dieser Stelle deshalb noch einmal auf die GECAMed Support Partnerfirmen, deren geschultes Personal alle Datenbank-bezogenen Wartungsarbeiten qualifiziert durchführen kann.

Im speziellen Fall einer GECAMed Installation sollten 2 Datenbanken vorhanden sein:

  • gecamed - die eigentliche GECAMed Datenbank.
  • postgres - die Meta Datenbank mit dem Data Dictionary, die zum Betrieb von PostgreSQL unerlässlich ist.

pgAdmin ist nun bereit, um Datensicherung und Wiederherstellung durchzuführen. Dazu ruft man über das rechts-Klick Kontext-Menü die Restore Funktion auf. Im sich daraufhin öffnenden Restore Dialogfenster wählt man jetzt die zu ladende pgdump Datei aus und kreuzt die 'Clean before restore' option an, damit eine eventuell bestehende DB gelöscht wird.

Dann startet man die Restaurierung mit OK. Je nach Grsse der Datenbank und der Leistungsfähigkeit des Datenbankservers kann die Restaurierung einige Zeit in Anspruch nehmen. Leider liefert pgAdmin dabei keine Rückmeldung, bis der Vorgang abgeschlossen ist, und es hilft hier nur Geduld.

Nach der Restaurierung wird der „Messages“ Reiter aktiviert, der Details über den Verlauf der Restauration enthält. Optimalerweise sollten bei einer kompletten Restauration mit der 'Clean before restore' option keine Fehler was GECAMed Daten angeht auftreten, da ja die alte Datenbank zuvor entfernt wurde. Allerdings sind andere Fehler oder Warnings möglich, die jedoch normalerweise keine Probleme darstellen.

Sollten schwerwiegende Fehler auftreten, versuchen Sie es erneut, aber mit folgenden Änderungen:
  1. Löschen Sie die Datenbank, in die Sie die GECAMed Daten wiederherstellen wollen
  2. Erstellen Sie die Datenbank erneut (der Owner muss die Rolle gecamed sein)
  3. Definieren Sie die Rolle gecamed als Superuser
  4. Lassen Sie die Option „Clean before restore“ beim wiederherstellen weg

Um eine Rolle als Superuser zu definieren, melden Sie sich mit einem Superuser an (z.B. postgres, bzw. postgres_gecamed), öffnen Sie den Punkt „Login Roles“, rechtsklicken Sie auf den Benutzer, wählen Sie „Properties“, öffnen Sie den Tab „Role privileges“, machen Sie ein Häkchen vor den Punkt „Superuser“ und bestätigen Sie mit „OK“.
Das Passwort für die Rolle postgres, bzw. postgres_gecamed finden Sie unter «JBoss Verzeichnis»/server/default/conf/gecamed_server.properties.

Alternatif zu pgAdmin kann auch das pg_restore Kommando von einer Kommandozeile gestartet werden.

Syntax: pg_restore -U <DB_user> -d <DB_Name> <file.pgdump>

Starten Sie nun das GECAMed client Programm und verifizieren sie stichprobenartig die Vollständigkeit einiger Patienten-Datensätze.

de/userguide/settings/generalsettings/datarestore.txt · Zuletzt geändert: 2015/04/07 15:05 von gbosch

Seiten-Werkzeuge