Un export PostgreSQL este util numai dacă poate fi restaurat și verificat. Folosește o destinație izolată și păstrează evidența rezultatelor.
Existența unui fișier exportat nu confirmă că aplicația poate fi recuperată. Un test PostgreSQL trebuie să verifice restaurarea, rolurile și funcțiile importante, fără să scrie în baza activă. Pentru un prim exercițiu, un export logic în format custom oferă un punct de pornire clar.
Pregătește destinația izolată
Folosește un server sau un mediu de test fără conexiuni către aplicația publică. Confirmă spațiul disponibil și compatibilitatea versiunilor clientului și serverului. Nu presupune că orice export poate fi importat fără schimbări într-o versiune mai veche.
Stabilește datele care pot fi copiate și cine are acces la ele. O copie a bazei poate conține informații personale și acreditări ale aplicației. Izolează integrările externe înainte să pornești o aplicație împotriva datelor restaurate.
Realizează exportul cu un cont autorizat
pg_dump -h sursa.example -U backup_user -Fc -f aplicatie.dump aplicatie
Înlocuiește numele demonstrative și verifică drepturile contului. Nu pune parola direct în comandă. Urmărește rezultatul procesului și mesajele de eroare, nu doar apariția fișierului. Protejează exportul și transferă-l printr-un canal securizat.
pg_dump realizează un export coerent al unei singure baze în condițiile documentate. Nu include automat toate obiectele globale ale clusterului, precum rolurile. Configurația serverului, extensiile și politica de acces trebuie inventariate separat.
Inspectează arhiva și restaurează separat
pg_restore --list aplicatie.dump
createdb -h test.example -U restore_user aplicatie_test
pg_restore -h test.example -U restore_user --exit-on-error --no-owner --no-privileges -d aplicatie_test aplicatie.dump
Comenzile presupun o destinație de test și un cont cu drepturile necesare. Opțiunile no-owner și no-privileges simplifică acest exercițiu, dar nu reproduc fidel proprietarii și permisiunile de producție. Acestea necesită o verificare distinctă.
Nu restaura peste o bază cu același nume doar pentru că este mai comod. Confirmă explicit gazda și destinația înainte de execuție. Restaurarea arhivelor poate executa cod definit în baza sursă; folosește numai surse de încredere și un mediu controlat.
Verifică datele și aplicația
Controlează tabelele importante, relațiile și extensiile necesare. Compară valori reprezentative și testează citirea și scrierea prin aplicația izolată. Pentru datele care se schimbă permanent în producție, definește dinainte ce comparație este validă față de momentul exportului.
Măsoară durata restaurării și notează intervențiile manuale. Dacă obiectivul este reluarea serviciului într-un interval scurt, timpul real de import poate schimba strategia de recuperare.
Integrează testul într-o strategie completă
Un export logic nu oferă singur recuperarea la orice moment și poate fi insuficient pentru baze mari sau cerințe stricte de continuitate. Analizează și copiile fizice ori arhivarea WAL, potrivit aplicației. Repetă exercițiul după schimbări majore.
Pentru o aplicație instalată pe infrastructură XSERVERE, clarifică cine gestionează copiile PostgreSQL, unde sunt păstrate și cine validează restaurarea. Backup-ul infrastructurii și recuperarea bazei trebuie coordonate.
Surse
- PostgreSQL — pg_dump — https://www.postgresql.org/docs/current/app-pgdump.html
- PostgreSQL — pg_restore — https://www.postgresql.org/docs/current/app-pgrestore.html
- PostgreSQL — Backup and Restore — https://www.postgresql.org/docs/current/backup.html
Ți-a fost util acest articol?


