PostgreSQL备份恢复一:转储

PostgreSQL备份恢复一:转储,第1张

概述总体上命令形式如下: pg_dump -h数据库服务器IP -hpg端口 -U用户名 -W密码 -F *备份文件的格式 -f 备份文件名 要备的数据库 pg_restore  -h数据库服务器IP -hpg端口 -U用户名 -W密码 -d 数据库名 备份文件名 其中数据库服务器IP为本机可以省略,端口为默认端口可以省略   常用的对应逻辑备份恢复命令示例如下,这些命令我都试过,可以成功运行: 1

总体上命令形式如下:

pg_dump-h数据库服务器IP -hpg端口-U用户名-W密码-F *备份文件的格式-f备份文件名 要备的数据库
pg_restore-h数据库服务器IP -hpg端口-U用户名-W密码-d数据库名 备份文件名

其中数据库服务器IP为本机可以省略,端口为默认端口可以省略

常用的对应逻辑备份恢复命令示例如下,这些命令我都试过,可以成功运行:

1
a 备份数据库 beigang
pg_dump -Ubeigang -f beigang_dump.pgdump beigang
b 恢复数据库beigang
恢复前先创建用户和数据库,然后执行恢复
create user beigang with superuser createdb createrole password 'beigang';
create database beigang owner=beigang;
pg_restore -U beigang -d beigang beigang_dump.pgdump
验证
beigang=# select * from test;
ID | name
----+------
1 | 贝钢
(1 行记录)
2
a 以custom format备份数据库 beigang
pg_dump -Ubeigang -F c -f beigang_dump.pgdump beigang
b 恢复数据库beigang
create user beigang with superuser createdb createrole password 'beigang';
create database beigang owner=beigang;
pg_restore -U beigang -F c -d beigang beigang_dump.pgdump
3
a 以directory format备份数据库 beigang
pg_dump -Ubeigang -F d -f beigang_dump.pgdump beigang
b 恢复数据库beigang
create user beigang with superuser createdb createrole password 'beigang';
create database beigang owner=beigang;
pg_restore -U beigang -F d -d beigang beigang_dump.pgdump
4
a 以plain text format备份数据库 beigang
pg_dump -Ubeigang -F p -f beigang_dump.pgdump beigang
b 恢复数据库beigang
create user beigang with superuser createdb createrole password 'beigang';
create database beigang owner=beigang;
psql -Ubeigang < beigang_dump.pgdump
5
a 以plain text format备份数据库 beigang 的数据,不包括模式
pg_dump -Ubeigang -F p -a -f beigang_dump.pgdump beigang
b 恢复数据库beigang
create user beigang with superuser createdb createrole password 'beigang';
create database beigang owner=beigang;
create schema xxx
create table test (ID numeric,name varchar(20));
psql -Ubeigang < beigang_dump
6
a 以plain text format备份数据库 beigang 的模式,不包括数据
pg_dump -Ubeigang -F p -s -f beigang_dump.pgdump beigang
b 恢复数据库beigang
create user beigang with superuser createdb createrole password 'beigang';
create database beigang owner=beigang;
psql -Ubeigang < beigang_dump
--只恢复了表定义
7
a 以plain text format备份数据库 beigang 的表test
pg_dump -Ubeigang -F p -t test -f beigang_dump.pgdump beigang
b 恢复数据库beigang
create user beigang with superuser createdb createrole password 'beigang';
create database beigang owner=beigang;
psql -Ubeigang < beigang_dump
--只恢复了备份的表
8

a 以plain text备份这个DBMS

pg_dumpall -Ubeigang -f pgdb.pgdump
b 恢复数据库系统

psql -Ubeigang < beigang_dump

总结

以上是内存溢出为你收集整理的PostgreSQL备份恢复一:转储全部内容,希望文章能够帮你解决PostgreSQL备份恢复一:转储所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/1183376.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存