Ho risolto questo problema eseguendo il backup per tutti gli schemi individualmente poiché la dimensione del database (che si tratti di n. di schemi o n. di tabelle) aumenta, è difficile eseguire il backup utilizzando pg_dump.
Ho apportato le seguenti modifiche allo script per eseguire il backup dello schema:
-
Prima di eseguire
pg_dump
, elenca tutti gli schemi di database in un file. In modo da poter iterare tutti gli schemi ed eseguire il backup di uno schema.Ecco il comando per elencare tutti gli schemi in un file
psql <db_name> -o <output_file> < <sql_to_list_schema>
Qui
sql_to_list_schema
contieneSELECT n.nspnameDA pg_catalog.pg_namespace nWHERE n.nspname !~ '^pg_' AND n.nspname <> 'schema_informazioni';
-
Ora leggi tutte le righe di
output_file
e fai il backup di quello schemapg_dump <db_name> -f <backup_file> -i -x -O -R -n <schema_name_read_from_file>