pg_restore

Name

pg_restore --  ��һ���� pg_dump �����ı����ļ��лָ� PostgreSQL ���ݿ⡣

Synopsis

pg_restore [option...]

����

pg_restore ��һ�����ڻָ��� pg_dump �������κηǴ��ı������ʽ�е� PostgreSQL ���ݿ��Ӧ�á� ����������Ҫ�����������¹������ݿ⣬�Ա��ڰ����ָ��ɱ�������ʱ������ӡ� �鵵�����ݣ��ļ�������pg_restore ��ѡ��ؽ��лָ��� �����ڻָ�ǰ����������Ŀ��˳�򡣹鵵���ļ���Ƴɿ����ڲ�ͬ��Ӳ����ϵ֮����ֲ��

pg_restore ����������ģʽ������������������ݿ����֣� ��ô�鵵��ֱ�ӻָ������ݿ�������ֻ����ֱ�����ݿ����ӽ��лָ��� �����ȴ���һ�������ؽ����ݿ�������� SQL ����Ľű�������д�뵽һ���ļ����߱�׼������� ���� pg_dump ������ı���ʽ��ʱ�򴴽������ֽű��� ��ˣ�һЩ���ƽű������ѡ�����ġ�� pg_dump �IJ�����

��Ȼ��pg_restore �޷��ָ���Щ�����ڹ鵵�ļ��е���Ϣ�� ���磬����鵵����"������ת��Ϊ INSERT����"ѡ�������ģ� ��ô pg_restore ������ʹ�� COPY ���װ�����ݡ�

ѡ��

pg_restore �����������������

filename

����Ҫ�ָ��ı����ļ���λ�á����û����������ʹ�ñ�׼���롣

-a
--data-only

ֻ�ָ����ݣ������ָ���ģʽ�����ݶ��壩��

-c
--clean

�������ݿ����ǰ������ɾ�������ǡ�

-C
--create

�ڻָ����ݿ�֮ǰ�ȴ���������������������ѡ��� -d ��һ������ݿ���ֻ�����ڷ��������CREATE DATABASE��� �������ݶ��ָ������ֳ����ڹ鵵�е����ݿ���ȥ����

-d dbname
--dbname=dbname

�����ݿ� dbname ���Ӳ���ֱ�ӻָ��������ݿ��С�

-e
--exit-on-error

����������ݿⷢ�� SQL �����ʱ�������������˳��� ȱʡ�Ǽ���ִ�в����ڻָ�����ʱ��ʾһ�����������

-f filename
--file=filename

�������ɵĽű�������ļ������߳���-l ѡ��ʱ�����б���ļ���ȱʡ�DZ�׼�����

-F format
--format=format

���������ļ��ĸ�ʽ����Ϊpg_restore ���Զ��жϸ�ʽ��������������ˣ�������������֮һ��

t

������һ�� tar �鵵�� ʹ�������ʽ�����ڻָ����ݿ��ʱ�����������/��ѱ�ģʽԪ���ų���ȥ�� ͬʱ�������ڻָ���ʱ������װ�ص����ݡ�

c

���ݵĸ�ʽ������pg_dump�Ŀͻ�����ʽ�� ���������ĸ�ʽ����Ϊ���������¶���������Ҳ�������ر�ģʽԪ�ء� ȱʡʱ�����ʽ��ѹ���ġ�

-i
--ignore-version

�������ݿ�汾��顣

-I index
--index=index

ֻ�ָ�������������

-l
--list

�г����ݵ����ݡ������������������� -L ѡ�����ƺ��������ָ�����Ŀ��

-L list-file
--use-list=list-file

ֻ�ָ��� list-file �����Ԫ�أ����������ļ��г��ֵ�˳�� ������ƶ������в���Ҳ����ͨ�����п�ͷ�� ';' �ķ�ʽע�͡��������Ļ�ȡ���ӡ���

-O
--no-owner

��Ҫ������ö����Ȩ�ޣ��Ա�����������ݿ�ƥ������ ȱʡʱ��pg_restore ���� ALTER OWNER �� SET SESSION AUTHORIZATION ������ô���������ģʽԪ�ص�������Ȩ�ޡ� �����������ݿ����Ӳ����ɳ����û���������ӵ�����д��������Ķ����ͬһ���û�������ģ���ô��Щ��佫ʧ�ܡ� ʹ�� -O����ô�κ��û����������ڳ�ʼ�����ӣ���������û���ӵ�����д��������Ķ���

-P function-name(argtype [, ...])
--function=function-name(argtype [, ...])

ֻ�ָ�ָ����������������ע����ϸƴд���������������Ӧ�ú�ת���������б��е���ȫһ����

-R
--no-reconnect

���ѡ���Ѿ������ˣ�����Ϊ�˱������¼�����Ȼ���ܡ�

-s
--schema-only

ֻ�ָ���ṹ�����ݶ��壩�����ָ����ݣ�����ֵ�����á�

-S username
--superuser=username

���ùرմ�����ʱ���������û����û����� ֻ���������� --disable-triggers ��ʱ������á�

-t table
--table=table

ֻ�ָ���ָ���ı�Ķ����/�����ݡ�

-T trigger
--trigger=trigger

ֻ�ָ�ָ���Ĵ�������

-v
--verbose

��������ģʽ��

-x
--no-privileges
--no-acl

���� ACL �Ļָ���grant/revoke �����

-X use-set-session-authorization
--use-set-session-authorization

��� SQL ��׼�� SET SESSION AUTHORIZATION ��������� OWNER TO ��� ������ת�����׼���ݵĸ��ã����Ǹ���ת���ж������ʷ�����ת�����ܲ���ǡ���ػָ���

-X disable-triggers
--disable-triggers

���ѡ��ֻ����ִ�н��ָ����ݵ�ʱ�����ء������� pg_restore ��װ�����ݵ�ʱ��ִ��һЩ������ʱ�ر���Ŀ����ϵĴ������� ������ڱ����������Լ����������������� �����ֲ�ϣ����װ�����ݵ�ʱ�򼤻����ǣ���ô����ʹ�����ѡ�

Ŀǰ��Ϊ --disable-triggers ��������������Գ����û������� ��ˣ���Ӧ��ҲҪ�� -S ����һ�������û��������߸��������� --use-set-session-authorization ������ PostgreSQL �����û�������� pg_restore��

pg_restore ����������������в�����Ϊ���Ӳ�����

-h host
--host=host

�������������еĻ������������� �����ֵ��б�ܿ�ͷ����ô�������� Unix ���׽��ֵ�Ŀ¼�� ȱʡ�Ǵ� PGHOST ���������л�ȡ�ģ���������ˣ��� ���򽫳��Խ��� Unix ���׽��֡�

-p port
--port=port

���������������� TCP �˿ڻ��߱��ص� Unix ���׽����ļ���չ�� ȱʡ�ǻ������� PGPORT ��ֵ����������˵Ļ����� �����˵�����ȱʡ��

-U username

�Ը����û�������ӡ�

-W

ǿ�Ƹ���������ʾ�����������Ҫ�������֤����ô���Ӧ���Զ�������

����

PGHOST
PGPORT
PGUSER

ȱʡ���Ӳ�����

���

��ʹ��-dѡ��������ֱ�����ݿ�����ʱ�� pg_restore ���ڲ�ִ�� SQL ��䡣��������� pg_restore ����ë���� ��ȷ������������ psql �����Ķ��������ݿ���ѡȡ��Ϣ��

ע��

�����İ�װ��template1���ݿ��������κ����Լ��Ķ����� ��ô��ע��� pg_dump ������ָ���һ�������յ����ݿ��У� ��������ܻ��յ���Ϊ�ظ�������׷�ӵĶ������ɵĴ�����Ϣ��Ҫ����һ��û���κα��ظ���������ݿ⣬ ���Դ�template0������template1���������磺

CREATE DATABASE foo WITH TEMPLATE = template0;

pg_restore �ľ����������г���

�ּ����� pg_dump���ĵ���ȡ�й� pg_dump �ľ��޵�ϸ�ڡ�

һ����ɻָ��������ÿ���ָ��Ķ��������� ANALYZE�� �Ա���Ż������õ�ͳ�ơ�

����

��һ�����������Ľ� mydb �����ݿ�ת����һ��tar�ļ���

$ pg_dump -Ft -b mydb > db.tar

��������ݿ�ָ������еĽ� newdb �����ݿ��У���ͬBLOB����

$ pg_restore -d newdb db.tar

Ҫ����Ŀ�����������ȱ���ת���鵵��Ŀ¼��

$ pg_restore -l archive.file > archive.list

����ļ���һ��ͷ��ÿ����Ŀһ����ɣ����硣

;
; Archive created at Fri Jul 28 22:28:36 2000
;     dbname: birds
;     TOC Entries: 74
;     Compression: 0
;     Dump Version: 1.4-0
;     Format: CUSTOM
;
;
; Selected TOC Entries:
;
2; 145344 TABLE species postgres
3; 145344 ACL species
4; 145359 TABLE nt_header postgres
5; 145359 ACL nt_header
6; 145402 TABLE species_records postgres
7; 145402 ACL species_records
8; 145416 TABLE ss_old postgres
9; 145416 ACL ss_old
10; 145433 TABLE map_resolutions postgres
11; 145433 ACL map_resolutions
12; 145443 TABLE hs_old postgres
13; 145443 ACL hs_old

����ֺ���ע�ͷָ��������п�ͷ�����ִ�����ÿ����Ŀ���ڲ��鵵 ID��

�ļ��ڵ��п���ע�͵���ɾ����/���������С����磬

10; 145433 TABLE map_resolutions postgres
;2; 145344 TABLE species postgres
;4; 145359 TABLE nt_header postgres
6; 145402 TABLE species_records postgres
;8; 145416 TABLE ss_old postgres

�������� pg_restore �����벢��ֻ��ָ���Ŀ 10 �� 6���������˳�򣩣�

$ pg_restore -L archive.file archive.list

��ʷ

pg_restore ���ߵ�һ�γ����� PostgreSQL 7.1��

�ּ�

pg_dump, pg_dumpall, psql