Giriş
pg_dump komutu ile alına yedekleri geri yüklemek içindir. Dump dosyası formatının text olmaması gerekir. Yoksa şu hatayı verir
pg_dump komutu ile alına yedekleri geri yüklemek içindir. Dump dosyası formatının text olmaması gerekir. Yoksa şu hatayı verir
$ pg_restore -U mypostgresqldumpplanet
-d myjhipsterplanet \
-c \
/var/lib/postgresql/data/2023-04-01-plaintext.sql
pg_restore: error: input file appears to be a text format dump. Please use psql.
-c seçeneğiRestore işleminden önce veri tabanını temizler.
Örnek - file restore
Şöyle yaparız
$ pg_restore \
-U mypostgresqldumpplanet \
-d myjhipsterplanet \
-c \
/var/lib/postgresql/data/2023-04-01-custom.dum
Örnek
Şöyle yaparız. Burada parametreler şöyle
-U admin kullanıcı ismi
-d veri tabanı ismi. postgres veri tabanı her zaman vardır
-C ile CREATE belirtiliyor
Restore işlemi başarısız çünkü myjhipsterplanet isimli role yok
$ pg_restore \
-U mypostgresqldumpplanet \
-d postgres \
-C \
/var/lib/postgresql/data/2023-04-01-original.dump
pg_restore: while PROCESSING TOC:
pg_restore: from TOC entry 3382; 1262 16384 DATABASE myjhipsterplanet myjhipsterplanet
pg_restore: error: could not execute query: ERROR: role "myjhipsterplanet" does not exist
Command was: ALTER DATABASE myjhipsterplanet OWNER TO myjhipsterplanet;
...
-l seçeneğiSanırım dump dosyasının içini gösteriyor.
Örnek
Şöyle yaparız.
pg_restore -l <custom_dump_file>
Komutu başlatınca çıktı olarak şunu alırız;
; Archive created at 2019-02-13 22:59:59 UTC
; dbname: <database_name>
; TOC Entries: 2615
; Compression: -1
; Dump Version: 1.13-0
; Format: CUSTOM
; Integer: 4 bytes
; Offset: 8 bytes
; Dumped from database version: 10.6 (Ubuntu 10.6-1.pgdg16.04+1)
; Dumped by pg_dump version: 11.1 (Ubuntu 11.1-3.pgdg16.04+1)
;
Veri Tabanı Restore İçinÖrnek
Şöyle yaparız
[root@blt ~]# su - postgres
[postgres@blt ~]$ pg_dump -Fc TestDB> TestDB.dump
...
[postgres@blt ~]$ pg_restore -C -d postgres TestDB.dump
Tablo Restore İçinÖrnek
Şöyle yaparız
[root@blt ~]# su - postgres
[postgres@blt ~]$ pg_dump -Fc — data-only -W -dpostgres -tt1 > t1.dump
...
[postgres@blt ~]$ pg_restore — data-only -W -dpostgres -tt1new t1.dump