Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
pgs_dump [2018/02/22 10:31] – [pg_dump] milano | pgs_dump [2022/08/31 15:57] (current) – [Izvoz u tekstualnu datoteku (plain text)] milano | ||
---|---|---|---|
Line 3: | Line 3: | ||
===== 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. Restauracija podataka na drugoj lokaciji vrši se programom [[: | + | 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 | Primer lokacije na Windows platformi | ||
Line 10: | Line 10: | ||
c:\Program Files\PostgreSQL\9.6\bin\pg_dump.exe | c:\Program Files\PostgreSQL\9.6\bin\pg_dump.exe | ||
</ | </ | ||
- | |||
===== Izvoz u kompresovanu datoteku ===== | ===== Izvoz u kompresovanu datoteku ===== | ||
Line 16: | Line 15: | ||
Preporučeni način izvoza baze podataka sa najviše opcija pri uvozu na drugi server jeste upotreba //custom// formata zapisa (-Fc). | 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/ | + | 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 | pg_dump -U postgres -Fc -d b1 -f b1.backup | ||
Line 27: | Line 26: | ||
**-d b1** je ime baze podataka koju prenosim/ | **-d b1** je ime baze podataka koju prenosim/ | ||
**-f b1.backup** je ime fajla u koji se podaci pohranjuju. | **-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) ===== | ===== Izvoz u tekstualnu datoteku (plain text) ===== | ||
Line 36: | Line 54: | ||
- navigacija u folder gde se nalazi pg_dump.exe npr: cd Program Files\PostgreSQL\9.6\bin | - 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: | - pokretanje komande za dump sa opcijama dupm-a: | ||
- | - **pg_dump -U < | + | - '' |
- znacenje opcija: -U < | - znacenje opcija: -U < | ||
- | * ime baze se može navesti i kao < | + | 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 **[[pgs_restore|pg_restore]]** procesu. |