PostgreSQL®-Datenbankwartung
Schema aktualisieren
PSQL_upgradeTo1.3.sql
aktualisiert das Schema auf Version
1.3. psql -f <upgrade_script.sql> [-U user] [-h database_host] [-p database_port] <database_name>
Um beispielsweise das Schema auf die Version 1.3 zu aktualisieren, bei der der Datenbankserver auf localhost mit dem Standardport (5432), mit dem Benutzer (etm) und mit dem Datenbanknamen (winccoa) installiert ist, rufen Sie einfach auf:
psql -f PSQL_upgradeTo1.3.sql -U etm winccoa
Sie werden dann nach dem Passwort des Benutzers `etm` gefragt. Weitere Informationen über die Herstellung einer Verbindung zur PostgreSQL®-Datenbank finden Sie unter (https://www.postgresql.org/docs/current/app-psql.html).
Sicherung erstellen
Precondition: WinCC OA läuft und PostgreSQL®-Datenbank ist erreichbar.
- Öffnen Sie auf Windows die Kommandozeile bzw. auf Linux ein Terminalfenster.
- Wechseln Sie in das folgende WinCC OA-Produktverzeichnis /bin/pgsql/bin. Wenn eine Umgebungsvariable unter Windows auf dieses Verzeichnis gesetzt ist, ist das nicht erforderlich.
- Setzen Sie die nachfolgenden psql-Befehle
ab:
Sie werden aufgefordert sich zu authenfizieren (user = "etm" + ihr definiertes Passwort bei Standardprojekt-Erstellung bzw. das Default-Passwort bei "Legacy Projekt"). Bei erfolgreich ausgeführtem Befehl wird folgendes ausgegeben:pg_basebackup -D <db_target_backup_directory> [-U admin_user] [-h database_host] [-p database_port] -Ft -z -c spread -R -P
<Größe/Größe> kB (100 %), 1/1 Tablespace
Anmerkung: Das <db_target_backup_directory> muss leer sein. Es empfiehlt sich im Verzeichnis ein "Datums+Zeit"-Ordner einzurichten.
Sicherung wiederherstellen
- Bennen Sie das nachfolgende Datenbank-Dateiverzeichnis um: <wincc oa project directory>db/wincc_oa/localdb/postgresql/16/pgdata und erstellen Sie ein neues leeres pgdata-Verzeichnis.
- Öffnen Sie auf Windows die Kommandozeile bzw. auf Linux ein Terminalfenster.
- Wechseln Sie in das folgende WinCC OA-Produktverzeichnis
<winccoa product
directory>/<version>/bin/pgsql/bin.
Anmerkung: Wenn eine Umgebungsvariable unter Windows auf dieses Verzeichnis gesetzt ist, ist das nicht erforderlich. Beachten Sie zudem, dass das Zielverzeichnis "database_directory" leer sein muss. Sie müssen zuerst Ihre alte, beschädigte Datenbank verschieben oder löschen.
- Führen Sie den Befehl aus für eine verwaltete Datenbank - siehe Kapitel : PostgreSQL®-Datenbank - Übersicht
tar -xf <db_target_backup_directory>/base.tar.gz -C <db_file_target_directory> tar -xf <db_target_backup_directory>/pg_wal.tar.gz -C <db_file_target_directory>/pg_wal
- Führen Sie die folgenden zwei Befehle aus, wenn Sie eine Remote-Datenbank
verwenden:
pg_ctl start -D <db_file_target_directory>
-
pg_ctl promote -D <database_directory>
Wenn eine Datenbank-Rücksicherung notwendig geworden ist und der NextGen Archiver die Daten aus dem Ausfall gepuffert hat, werden die Puffer automatisch in die Datenbank nachgeschrieben, nachdem eine neue DB-Verbindung hergestellt und die Puffer aufgelöst wurden.
Sie finden alle erforderlichen Befehle in der Readme-Datei <winccoa product directory>/<version>data/NGA/PostgreSQL/sql>/readme.md
systemctl
anstelle von pg_ctl
start
.pg_ctl
ist unter Debian nicht im bin-Pfad
enthalten. Sie müssen den vollständigen Pfad
/lib/postgresql/$version$/bin/pg_ctl verwenden.