删除数据库,Linux操作行下执行
su - postgres dropdb -U postgres abc
登录数据库查看
psql -U postgres -W --postgres用户登录 \l --查看数据库
发现已经不存在 abc 数据库了
基于 之前已经备份了postgresql数据。 pg_dump(备份单个数据库) 和 pg_dumpall(备份整个数据库) ,下面基于这两种方式恢复
pg_dump备份
pg_dump -h localhost -U postgres -v -Fc -d abc --no-owner -f /backup/abc.dump
pg_dumpall备份
pg_dumpall -h localhost -U postgres --inserts > /backup/all.sql
pg_dump恢复
首先,登录 postgres 创建一个数据库
postgres=# create database abc postgres-# with owner ='xy'
恢复
pg_restore -U postgres /abc.dump -d abc
pg_dumpall恢复
psql -U postgres -f /backup/all.sql
通过全库备份的文件进行恢复,根据 全库备份文件内容 只恢复 不存在 的数据,已存在 不进行恢复
检验
发现 abc 数据库已经恢复