pg数据库的备份与恢复

数据库备份:

1.采用sql文件进行备份

2.直接复制数据库文件进行全局备份

1.采用sql文件进行备份

将数据库dbname,从host1复制到host2

pg_dump -h host1 dbname | psql -h host2 dbname

pg_dump指令:

备份:pg_dump dbname > outfile

恢复:psql dbname < infile

注:转储sql文件中不包含创建数据库的语句。需要在恢复之前先创建一个数据库。

pg_dump工具转储的是一个数据库dbname中所有的信息,不会转储角色和表空间等信息,如果需要完整转储整个数据库中所有的数据库实例,PostgreSQL提供了一个工具pg_dumpall,该工具能够转储一个数据库集簇中所有的内容,包含了前面提到的角色和表空间。使用的方法是:

备份:pg_dumpall > outfile

恢复:psql -f infile postgres

2.直接复制数据库文件进行全局备份

直接将存储数据库的文件进行备份,也就是通常下的pgdata目录

tar -czvf backup.tar.gz /data1/pgdata

原文地址:https://www.cnblogs.com/pass-ion/p/14500491.html