Diese Funktion ist im Aktualisierungsdienst integriert. Lesen Sie dazu Regelmäßige, automatische Datensicherung durch den Aktualisierungsdienst.
Diese Seite wird nicht mehr gepflegt.
Diese Dokumentation soll Anhaltspunkte geben, wie es funktionieren kann, wenn der Aktualisierungsdienst nicht verwendet wird.
Für das Backup und Restore der ASV-Datenbank stehen Ihnen zwei Batch-Dateien zur Verfügung, die helfen könnten. Bitte laden Sie sich diese herunter.
Laden Sie sich zunächst die unten stehende Datei herunter (für den direkten Download auf den Dateinamen klicken).
Klicken Sie die Datei zum Anpassen mit der rechten Maustaste an und wählen Sie „Bearbeiten“. Zur besseren Übersicht sollte unter „Format“ „Zeilenumbruch“ eingestellt werden.
@Echo off Echo Erstellen eines Backups der ASV-Datenbank Echo ========================================= Echo. Rem Bitte hier Zielverzeichnis einstellen (ohne \ am Ende) set ziel=C:\ASV\Sicherung Rem Konfiguration Rem Standardverzeichnisse für pg_dump.exe unter Windows Rem (Bitte ggf. anpassen, wenn Sie von der Standardinstallation Rem abgewichen sind.) set pgdumpProgramm="C:\Program Files\PostgreSQL\9.2\bin\pg_dump.exe" set PGPASSWORD=geheim REM Ausgabeformat set backup=asv_20%date:~8,2%%date:~3,2%%date:~0,2%.backup IF Exist %ziel%/nul ( GOTO speichern ) ELSE ( Echo Das Zielverzeichnis '%ziel%' existiert nicht. Echo Es wurde NICHTS gespeichert. Echo. GOTO Ende ) :speichern IF Exist %pgdumpProgramm% ( Echo Backup unter Win7: Echo %pgdumpProgramm% -U asv -Fc -f %ziel%\%backup% asv %pgdumpProgramm% -U asv -Fc -f %ziel%\%backup% asv ) set PGPASSWORD=null Echo. Echo Backup-Vorgang abgeschlossen. Echo. Echo Der Name der Sicherungsdatei lautet: Echo %ziel%\%backup% Echo. :Ende PAUSE
Führen Sie die Batchdatei durch Aufruf mit asv_backup.bat in einer Eingabeaufforderung aus, nachdem Sie die Konfiguration an Ihre Verhältnisse angepasst haben.
Hinweise:
Falls das Passwort des Datenbankbenutzers asv ein %-Zeichen enthält, muss dieses durch eine weiteres %-Zeichen „maskiert“ werden.
Beispiel:
Passwort: abc%123
Eintrag in das Skript: abc%%123
Empfehlung der PostgreSQL Projektgruppe ist die Verwendung einer Datei .pgpass
, statt der Variablen PGPASSWORD.
Siehe http://www.postgresql.org/message-id/ga6lj0$d6v$1@ger.gmane.org und http://www.postgresql.org/docs/current/static/libpq-pgpass.html.
Nach dem Start der Batch-Datei wird das Backup in das eingestellte Zielverzeichnis geschrieben. Der Dateiname des Backup enthält das Sicherungsdatum. (z. B. asv_20131002.backup)
Die Batch-Datei eignet sich auch, um ASV regelmäßig per „geplantem Task“ zu sichern (siehe unten).
Bitte laden Sie die Batch-Datei folgende Batch-Datei herunter. Zum direkten Download klicken Sie auf den Dateinamen.
@ECHO Off REM Bitte hier einstellen, in welchem Verzeichnis sich REM die Postgres-Tools dropdb.exe, createdb.exe und REM pgrestore.exe befinden. (ohne \ am Ende) SET pgpfad="C:\Program Files\PostgreSQL\9.2\bin\" CLS ECHO Wiederherstellen einer ASV-Datenbank ECHO ===================================== ECHO. IF EXIST %1 GOTO RESTORE ECHO Keine Datei!!! GOTO KEINEDATEI :RESTORE CLS ECHO Wiederherstellen einer ASV-Datenbank ECHO ===================================== ECHO. ECHO 1. dropdb ECHO Bitte hier das Postgres-Passwort angeben (falls es verlangt wird), ECHO nicht das ASV-Datenbank-Passwort! ECHO. "%pgpfad%\dropdb.exe" -U postgres asv CLS ECHO Wiederherstellen einer ASV-Datenbank ECHO ===================================== ECHO. ECHO 1. dropdb ... Die bisherige Datenbank wurde geloescht. ECHO. ECHO 2. createdb ECHO Bitte geben Sie das ASV-Datenbank-Passwort an! (meist 'asv') ECHO. "%pgpfad%\createdb.exe" -U asv asv IF NOT %ERRORLEVEL%==0 GOTO FEHLER2 CLS ECHO Wiederherstellen einer ASV-Datenbank ECHO ===================================== ECHO. ECHO 1. dropdb ... Die bisherige Datenbank wurde geloescht. ECHO. ECHO 2. createdb ... Die neue (noch leere Datenbank) wurde angelegt. ECHO. ECHO 3. pg_restore (Daten einspielen) ECHO Der Restore-Vorgang kann ein paar Minuten dauern. Bitte Geduld! ECHO Wiederhergestellt wird: ECHO %1 ECHO. ECHO Bitte nochmal das ASV-Datenbank-Passwort angeben! (meist 'asv') ECHO. "%pgpfad%\pg_restore.exe" -d asv -U asv -v %1 CLS ECHO Wiederherstellen einer ASV-Datenbank ECHO ===================================== ECHO. ECHO 1. dropdb ... Die bisherige Datenbank wurde geloescht. ECHO. ECHO 2. createdb ... Die neue (noch leere Datenbank) wurde angelegt. ECHO. ECHO 3. pg_restore Die leere Datenbank wurde mit Inhalten gefuellt. ECHO. ECHO. ECHO Die Wiederherstellung der Datei ECHO %1 ECHO ist abgeschlossen. GOTO ENDE :KEINEDATEI CLS ECHO Wiederherstellen einer ASV-Datenbank ECHO ===================================== ECHO. ECHO Es wurde keine .backup-Datei fuer Postgres angegeben. ECHO Bitte 'ziehen' Sie eine solche Datei auf diese .bat-Datei! GOTO ENDE :FEHLER2 CLS ECHO Wiederherstellen einer ASV-Datenbank ECHO ===================================== ECHO. ECHO Fehler beim Erstellen der Datenbank. ECHO Moegliche Fehlerquellen: ECHO - Laeuft der ASV-Server noch? ECHO - Sie haben ein falsches ASV-Datenbankkennwort angegeben. GOTO ENDE :ENDE ECHO. PAUSE
Die Batch-Datei ist für eine Standard-Installation von Postgres unter Windows7 ausgelegt. Die Variable pgpfad verweist auf das Verzeichnis in dem sich die Postgres-Tools dropdb.exe, createdb.exe und pgrestore.exe befinden. Am Ende der Variablen darf kein \ stehen!
Wenn eine Sicherung zurückgespielt werden soll, …
Damit Sie nicht täglich eine manuelle Sicherung der ASV-Datenbank erstellen müssen, können Sie diesen Vorgang automatisieren:
Falls Sie Lösungen für spezielle Konfigurationen in Ihrer Systemumgebung suchen, werden Sie vielleicht in der Sammlung alternativer Skripte:start fündig.