########################################pg_dump###################################
1.导出具体某个schema(导出sql格式,不是二进制格式,二进制格式需要使用pg_restore恢复)
导出s1 schema
su - postgres
pg_dump -h 192.168.1.102 -U postgres -p 5432 -d db_rep -n s1 -f /tmp/s1.sql
导出public schema
pg_dump -h 192.168.1.102 -U postgres -p 5432 -d db_rep -n public -f /tmp/public.sql
导出整个库,会导出该库下的所有schema,文件里表名会带上schema
pg_dump -h 192.168.1.102 -U postgres -p 5432 -d db_rep -f /tmp/db_rep.sql
导出多个schema,需要使用多个-n参数
pg_dump -h 192.168.1.102 -U postgres -p 5432 -d db_rep -n public -n s1 -f /tmp/s1_public.sql
2.导入某个schema
模拟删除schema
db_rep=# \dn
List of schemas
Name | Owner
--------+----------
public | postgres
s1 | postgres
(2 rows)
db_rep=# drop schema s1 cascade;
NOTICE: drop cascades to table s1.tb_s1
DROP SCHEMA
导入
[postgres@localhost ~]$ psql -h 192.168.1.102 -U postgres -p 5432 -d db_rep</tmp/s1.sql