Base Backup-Mode herausfinden

Hallo,

Das Kommando “pg_start_backup(‘label’)” lässt sich bekannterweise nur einmal ausführen, da der Server dann bereits im Base Backup-Modus befindet.

Leider konnte ich bis jetzt nicht herausfinden, ob eine weitere Möglichkeit existiert, den Base Backup-Modus (an/aus) herauszufinden.

Gruß
Holger

Du könntest schauen, ob das Backup-Label-File existiert.

Andreas



test=# select count(1) from pg_ls_dir(current_setting('data_directory')) where pg_ls_dir = 'backup_label';
 count
-------
     0
(1 row)

test=# select pg_start_backup('label');
 pg_start_backup
-----------------
 0/7000020
(1 row)

test=# select count(1) from pg_ls_dir(current_setting('data_directory')) where pg_ls_dir = 'backup_label';
 count
-------
     1
(1 row)

test=# select pg_stop_backup();
 pg_stop_backup
----------------
 0/700007C
(1 row)

test=# select count(1) from pg_ls_dir(current_setting('data_directory')) where pg_ls_dir = 'backup_label';
 count
-------
     0
(1 row)

Andreas

Wäre es nicht praktischer, das Starten des Backups auf Applikationsseite zu verhindern?

Wenn man die Datenbank dazu nutzen will: PostgreSQL kennt Advisory Locks, damit könnte man ein mehrfaches Starten des Backups vermeiden.

Hallo,

Danke. Die Informationen reichen dazu sehr gut aus.

Gruß
Holger