Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| kb:pg:pgs_dump [2025/03/29 15:44] – removed - external edit (Unknown date) 127.0.0.1 | kb:pg:pgs_dump [2025/03/29 15:44] (current) – ↷ Links adapted because of a move operation milano | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== PG Dump ====== | ||
| + | ===== pg_dump ===== | ||
| + | |||
| + | Za kopiranje PostgreSQL baze podataka najsvrsishodnije je koristiti postojeci pg_dump koji je lociran u folderu kome je instaliran Postgres, i to u folderu Bin. | ||
| + | |||
| + | Primer lokacije na Windows platformi | ||
| + | |||
| + | < | ||
| + | c:\Program Files\PostgreSQL\9.6\bin\pg_dump.exe | ||
| + | </ | ||
| + | |||
| + | ===== Izvoz u kompresovanu datoteku ===== | ||
| + | |||
| + | Preporučeni način izvoza baze podataka sa najviše opcija pri uvozu na drugi server jeste upotreba //custom// formata zapisa (-Fc). | ||
| + | |||
| + | Pri prenosu celih baza podataka, veoma je važno da izlazni fajl bude kompresovan jer se može desiti da zbog veličine bude nepodesan za prenos/ | ||
| + | < | ||
| + | pg_dump -U postgres -Fc -d b1 -f b1.backup | ||
| + | </ | ||
| + | |||
| + | Objašnjenje parametara: | ||
| + | |||
| + | **-U postgres** znači da operaciju izvodim pod korisničkim nalogom // | ||
| + | **-Fc** znači da koristim //custom format// fajla, koji dozvoljava najviše opcija pri raspakivanju ( pg _ restore ) baze. Istovremeno, | ||
| + | **-d b1** je ime baze podataka koju prenosim/ | ||
| + | **-f b1.backup** je ime fajla u koji se podaci pohranjuju. | ||
| + | |||
| + | Ako se dump pravi sa računara na kom nije PGS server sintaksa je sledeća (--verbose može da se izostavi kada nema potrebe da se ispisuje trenutna dump akcija u CMD prozoru): | ||
| + | |||
| + | < | ||
| + | pg_dump --dbname=postgresql:// | ||
| + | </ | ||
| + | |||
| + | Preporuka za izradu kopije za potrebe prenosa na drugi server (npr. kada stavljamo bazu na kanal) jeste da se prilikom //dump-a// izostave podaci o vlasniku, odnosno privilegijama pristupa objektima. | ||
| + | Tako izbegavamo neophodnost postojanja identičnog korisničkog naloga na serveru na kom će se baza raspakivati. | ||
| + | |||
| + | '' | ||
| + | '' | ||
| + | '' | ||
| + | |||
| + | Primer tipične komande za izradu bekapa namnjenog prenosu "na kanal" bi bio: | ||
| + | |||
| + | < | ||
| + | pg_dump -U postgres -Fc -d b1 -n bcus -n bpub -n btek -O -x -f b1.backup | ||
| + | </ | ||
| + | ===== Izvoz u tekstualnu datoteku (plain text) ===== | ||
| + | |||
| + | Ovaj format omogućava proizvoljne aktivnosti na prilagođavanju fajla za naknadni uvoz u običnom uređivaču teksta jer se baza izvozi kao SQL skript. Kako se pri zameni delova teksta izbegla mogućnost oštećenja podataka, toplo se preporučuje odvojiti definicije od podataka u dva zasebna fajla. | ||
| + | |||
| + | Procedura za dampovanje je: | ||
| + | |||
| + | - pokretanje command prompta (cmd.exe) u administratorskom rezimu | ||
| + | - navigacija u folder gde se nalazi pg_dump.exe npr: cd Program Files\PostgreSQL\9.6\bin | ||
| + | - pokretanje komande za dump sa opcijama dupm-a: | ||
| + | - '' | ||
| + | - znacenje opcija: -U < | ||
| + | |||
| + | Ime baze se može navesti i kao ''< | ||
| + | |||
| + | Samo struktura baze se može izvesti komandom '' | ||
| + | < | ||
| + | Samo podaci baze se mogu izvesti komandom '' | ||
| + | Opcija '' | ||
| + | |||
| + | |||
| + | ===== Aktivna opcija " | ||
| + | |||
| + | Kada je aktivirana opcija // | ||
| + | |||
| + | Zaključavanje se izvodi dodavanjem '' | ||
| + | |||
| + | Funkcija se oslanja na tabelu '' | ||
| + | |||
| + | Pošto '' | ||
| + | Da bi se ovo prevazišlo potrebno je: | ||
| + | |||
| + | - Pre bekapovanja promeniti funkciju '' | ||
| + | - U tabeli '' | ||
| + | - Nakon bekapovanja vratiti funkciju na staro kao i vrednost polja '' | ||
| + | - Nakon '' | ||
| + | |||
| + | Ukoliko se sve ovo ne uradi i dalje će biti moguća rekonstrukcija baze iz bekapa ali dodatnim koracima u **[[kb: | ||