pgs_restore

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
pgs_restore [2021/01/22 21:48] – [Aktivna opcija "zaključavanja perioda"] milanopgs_restore [2024/01/31 12:29] (current) milano
Line 23: Line 23:
  
 <code> <code>
-pg_restore -U balans_admin -C -d postgres b1.backup+pg_restore -U balans_admin -C --disable-triggers -d postgres b1.backup
 </code> </code>
  
Line 30: Line 30:
 **-U balans_admin** znači da operaciju izvodim, na novom serveru, pod korisničkim nalogom //balans_admin//. Dobro je znati da novi server ne mora imati iste korisničke naloge.\\ **-U balans_admin** znači da operaciju izvodim, na novom serveru, pod korisničkim nalogom //balans_admin//. Dobro je znati da novi server ne mora imati iste korisničke naloge.\\
 **-C** znači da se na će se pri raspakivanju napraviti nova baza podataka, sa istim imenom kao što ga je imala izvorna.\\ **-C** znači da se na će se pri raspakivanju napraviti nova baza podataka, sa istim imenom kao što ga je imala izvorna.\\
 +**--disable-triggers** se koristi kada postoje podaci unutar baze koja se restaurira kako bi se izbegle greške u referencijalnim vezama među podacima koji nisu u potpunosti vraćeni. \\
 **-d postgres** je parametar koji pravi najviše zabune, jer izgleda kao da dajemo instrukciju da se baza raspakuje u bazu sa imenom //postgres//. Ustvari, parametar -C sprečava da se ovo desi, pa je ime //postgres// iskorišćeno samo zato što takvo sigurno postoji na novom serveru. Moglo je poslužiti i bilo koje drugo, za koje znamo da postoji. Kako smo zadali parametar -C, pg_restore će automatski napraviti bazu pod imenom **b1**, kako je u izvornom b1.backup fajlu i navedeno.\\ **-d postgres** je parametar koji pravi najviše zabune, jer izgleda kao da dajemo instrukciju da se baza raspakuje u bazu sa imenom //postgres//. Ustvari, parametar -C sprečava da se ovo desi, pa je ime //postgres// iskorišćeno samo zato što takvo sigurno postoji na novom serveru. Moglo je poslužiti i bilo koje drugo, za koje znamo da postoji. Kako smo zadali parametar -C, pg_restore će automatski napraviti bazu pod imenom **b1**, kako je u izvornom b1.backup fajlu i navedeno.\\
 **b1.backup** je ime fajla u kom se nalazi spakovana i kompresovana baza koju raspakujemo. **b1.backup** je ime fajla u kom se nalazi spakovana i kompresovana baza koju raspakujemo.
  
 +=== Vraćanje samo tekuće baze ===
 +
 +Kada je baze sadrže mnogo arhiva a potrebno je izvući samo tekuću godinu koristi se sledeći format komande:
 +
 +<code>
 +pg_restore -U balans_admin -C --disable-triggers -O -x -d bxx -n bcus -n bpub -n btek -f b1.backup
 +</code>
 +
 +Objašnjenje parametara:
 +
 +''-n'' - navodim šeme koje želim da izvučem iz bekapa \\
 +''-O'' - naređujem da se ne rekonstruiše vlasništvo nad objektima (vlasnik postaje korisnik naveden pod ''-U'' opcijom) \\
 +''-x'' - naređujem da se ne rekonstruišu ni posebne privilegije nad objektima \\ 
  
 ===== psql - vraćanje iz "plain-text" formata ===== ===== psql - vraćanje iz "plain-text" formata =====
Line 49: Line 63:
 "Switch" parametre treba navesti pre parametara baze i korisničkog imena. "Switch" parametre treba navesti pre parametara baze i korisničkog imena.
  
-Psql alatu se može zadati i server, port, baza, korisničko ime i lozinka u ovom formatu, (ispred reči dbname treba da budu 2 crtice, ali ih docuwiki spaja jednu) npr: \\ psql.exe –dbname=postgresql://korisnik:lozinka@:pgserver:5432/b4 //ostale_opcije_i_parametri+Psql alatu se može zadati i server, port, baza, korisničko ime i lozinka u ovom formatu kao primerima na https://razvoj.melany.rs/issues/1087 
  
 ===== Aktivna opcija "zaključavanja perioda" ===== ===== Aktivna opcija "zaključavanja perioda" =====
Line 107: Line 122:
 Ukoliko je potrebno vratiti zaključavanje u prethodno stanje pre postavke u NULL treba očitati tekuću vrednost. Ukoliko je potrebno vratiti zaključavanje u prethodno stanje pre postavke u NULL treba očitati tekuću vrednost.
  
-Sada smo spremni da preuzmemo i ostale podatke:+Sada smo spremni da preuzmemo i ostale podatke, ali ovaj put dodajemo i ''--disable-triggers'' parametar kako uvozu ne bi zasmetale privremeno nedostajuće relacije:
 <code> <code>
-#> pg_restore -h 192.168.0.5 -p 5432 -U postgres -v -n bcus -n bpub -n btek -O -d b3 -x -a c:\b3_mivela.backup 2>restore3.log+#> pg_restore -h 192.168.0.5 -p 5432 -U postgres -v -n bcus -n bpub -n btek -O -d b3 -x -a --disable-triggers c:\b3_mivela.backup 2>restore3.log
 </code> </code>
  
  • pgs_restore.1611352114.txt.gz
  • Last modified: 2021/01/22 21:48
  • by milano