postgresql-备份与恢复

postgresql-备份与恢复

  • 基本概念
  • 备份类型
    • 物理备份与逻辑备份
    • 在线备份与离线备份
    • 全量备份与增量备份
  • 备份恢复工具
  • 备份与恢复
    • 逻辑备份与还原
      • 备份单个数据库
      • psql
      • pg_dump
      • pg_store
  • 备份整个集群

基本概念

服务器系统错误、硬件故障或者人为失误都可能导致数据的丢失或损坏。因此,备份和恢复
对于数据库的高可用性至关重要。数据库管理员应该根据业务的需求制定合适的备份策略,并提
前演练各种故障情况下的恢复过程,做到有备无患。

在升级 PostgreSQL 版本之前,通常也需要先进行数据库的备份。另外,备份也可以用于主从复制结构中的从节点初始化

备份(backup)是通过某种方式(物理复制或者逻辑导出)将数据库的文件或结构和数据
拷贝到其他位置进行存储

还原(restore)是一种不完全的恢复,使用备份的文件将数据库恢复到执行备份时的状态。
备份时间点之后的数据变更无法通过还原进行恢复。

恢复(recovery)通常是先使用物理备份文件进行还原,然后再应用备份时间点到故障点之
间的日志文件(WAL),将数据库恢复到最新状态。

备份类型

根据备份的方式和内容的不同,可以进行以下分类。

物理备份与逻辑备份

在这里插入图片描述

在线备份与离线备份

在这里插入图片描述

全量备份与增量备份

全量备份(Full Backup)就是备份所有的数据库文件,执行一次完整的 PostgreSQL 数据库集群备份。这种方式需要备份的内容较多,备份时较慢,但是恢复速度更快。

增量备份(Incremental Backup)就是备份上一次备份(任何类型)之后改变的文件。另外,
差异备份(Differential Backup)是针对上一次完全备份后发生变化的所有文件进行备份。增量
备份每次备份的数据量较小,但是恢复时需要基于全量备份,并依次恢复增量部分,时间较长。
差异备份位于两者之间

在这里插入图片描述

备份恢复工具

在这里插入图片描述

  • pg_dump,逻辑备份工具,支持单个数据库(可以指定模式、表)的导出,可以选择导出的格式
  • pg_dumpall,逻辑备份工具,用于导出整个数据库集群,包括公用的全局对象
  • pg_basebackup,物理备份工具,为数据库集群创建一个基准备份。它也可以用于时间点恢复(point-in-time recovery)的基准备份,或者设置基于日志传输或流复制的从节点的初始化。
  • psql, PostgreSQL 交互式命令行工具,也可以用于导入逻辑备份产生的 SQL 文件
  • pg_restore,逻辑还原工具,用于还原 pg_dump 导出的归档格式的备份文件。
  • COPY,PostgreSQL 专有的 SQL 语句,将表中的数据复制到文件,或者将文件中的数据复制到表中

此外,还可以通过第三方工具执行备份与恢复操作。

  • pgAdmin(开源)
  • Barman(开源)
  • pg_probackup(开源)
  • pgBackRest(开源)
  • BART(商业)

备份与恢复

逻辑备份与还原

执行逻辑备份时,PostgreSQL 服务器必须已经启动,备份工具(例如 pg_dump)通过建立
数据库连接,从数据库中查询出相应的结构信息和数据,并生成备份文件。针对不同的备份格式,
PostgreSQL 提供了配套的还原工具。

备份单个数据库

PostgreSQL 提供了备份单个数据库的工具 pg_dump,在安装目录下bin文件夹下面,关于 pg_dump 工具的各种选项,可以参考官方文档
在这里插入图片描述

D:\tools\postgresql\bin\pg_dump.exe --help

在这里插入图片描述
它支持三种文件格式
在这里插入图片描述
使用windows dos命令行打开pg_dump,备份数据库
在这里插入图片描述
备份成功,文件内容
在这里插入图片描述

psql

官网介绍

-- 查询使用方式
D:\tools\postgresql\bin\psql.exe --help

在这里插入图片描述
使用psql恢复数据库
在这里插入图片描述
恢复成功
在这里插入图片描述

pg_dump

pg_dump 和 psql 支持的读写管道功能使得我们可以直接将数据库从一个服务器导出到另一
个服务器
-Fc 指定自定义格式,这种格式的备份,还原时需要使用PostgreSQL 提供的 pg_restore 工具
-f 指定导出的文件名
-h 数据库连接地址
-U 用户名
-d 数据库名

"D:\tools\postgresql\bin\pg_dump.exe" -h localhost  -U postgres -d cps  -f "C:\Users\16837\Desktop\1.dmp" -Fc

输入用户postgres对应的用户密码
在这里插入图片描述
备份成功,1.dmp文件内容
在这里插入图片描述

pg_store

pg_restore路径 -h数据库连接地址 -U 用户名 -d数据库名 恢复数据库文件地址

"D:\tools\postgresql\bin\pg_restore.exe" -h localhost  -U postgres -d newdb "C:\Users\16837\Desktop\1.dmp"

输入用户postgres对应的用户密码

在这里插入图片描述
恢复成功,newdb下的表products被创建
在这里插入图片描述

备份整个集群

pg_dump 每次只导出一个数据库,而且它不会导出角色或表空间(属于集群范围)相关的信
息。为此,PostgreSQL 还提供了导出数据库集群的 pg_dumpall 工具。它会针对集群中的每个数
据库调用 pg_dump 来完成导出工作,同时还导出所有数据库公用的全局对象(pg_dump 不保存
这些对象),包括数据库用户和组、表空间以及所有数据库的访问权限等属性
pg_dumpall官网介绍
因为 pg_dumpall 从所有数据库中读取表,所以需要以一个超级用户的身份连接以便生成完
整的导出操作。同样,还原时也需要超级用户特权执行备份的脚本,这样才能增加用户和组以及
创建数据库

-- pg_dumpall路径  -U用户名   -f备份文件路径
"D:\tools\postgresql\bin\pg_dumpall.exe" -U postgres  -f "C:\Users\16837\Desktop\1.sql"

在这里插入图片描述
备份成功,文件内容
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/96531.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一文全面解读CKA认证的含金量、详细介绍!

K8s是目前最流行的开源容器编排引擎,在全球都得到了广泛应用,BAT、京东、360、华为、网易、IBM、知乎等国内外诸多知名公司都在基于K8s构建企业容器云平台,支撑公司业务,越来越多的企业也都在向K8s迁移。相信在不远的将来&#xf…

日期相关工具类

日期相关工具类 【一】介绍【1】SimpleDateFormat 为什么是线程不安全【2】解决 SimpleDateFormat 线程不安全的方法 【二】LocalDate API【三】LocalTime API【四】LocalDateTime API【五】转换关系【1】LocalDateTime 与 LocalDate 之间的转换【2】LocalDateTime 与 Date 之间…

华为云云耀云服务器L实例评测|Elasticsearch的可视化Kibana工具安装 IK分词器的安装和使用

前言 最近华为云云耀云服务器L实例上新,也搞了一台来玩,期间遇到各种问题,在解决问题的过程中学到不少和运维相关的知识。 本篇博客介绍Elasticsearch的可视化Kibana工具安装,以及IK分词器的安装和使用。 其他相关的Elasticsea…

电影产业的数据洞察:爬虫技术在票房分析中的应用

概述 电影产业是一个庞大而复杂的行业,涉及到各种各样的因素,如导演、演员、类型、主题、预算、宣传、口碑、评分、奖项等。这些因素都会影响电影的票房收入,也会反映出电影市场的动态和趋势。为了更好地了解电影产业的数据洞察,…

华为云云耀云服务器L实例评测|RabbitMQ的Docker版本安装 + 延迟插件安装 QQ邮箱和阿里云短信验证码的主题模式发送

前言 最近华为云云耀云服务器L实例上新,也搞了一台来玩,期间遇到各种问题,在解决问题的过程中学到不少和运维相关的知识。 本篇博客介绍RabbitMQ的Docker版本安装和配置,延迟插件的安装;结合QQ邮箱和阿里云短信验证码…

CMMI5认证哪些企业可以申请

CMMI5认证哪些企业可以申请 什么是CMMI5认证 CMMI(Capability Maturity Model Integration)是一种用于评估组织的软件工程能力的国际标准。CMMI模型包括5个等级,其中CMMI5是最高等级,代表组织具有达到持续优化和创新的能力。获得…

Elasticsearch:多语言语义搜索

在此示例中,我们将使用多语言嵌入模型 multilingual-e5-base 对混合语言文档的 toy 数据集执行搜索。 使用这个模型,我们可以通过两种方式进行搜索: 跨语言,例如使用德语查询来查找英语文档在非英语语言中,例如使用德…

【计算机网络】高级IO初步理解

文章目录 1. 什么是IO?什么是高效 IO? 2. IO的五种模型五种IO模型的概念理解同步IO与异步IO整体理解 3. 阻塞IO4. 非阻塞IOsetnonblock函数为什么非阻塞IO会读取错误?对错误码的进一步判断检测数据没有就绪时,返回做一些其他事情完整代码myt…

Flutter笔记 - ListTile组件及其应用

Flutter笔记 ListTile组件及其应用 作者:李俊才 (jcLee95):https://blog.csdn.net/qq_28550263 邮箱 :291148484163.com 本文地址:https://blog.csdn.net/qq_28550263/article/details/133411883 目 录 1. …

计算机毕设 大数据工作岗位数据分析与可视化 - python flask

文章目录 0 前言1 课题背景2 实现效果3 项目实现3.1 概括 3.2 Flask实现3.3 HTML页面交互及Jinja2 4 **完整代码**5 最后 0 前言 🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要…

R实现数据分布特征的视觉化——多笔数据之间的比较

大家好,我是带我去滑雪! 如果要对两笔数据或者多笔数据的分布情况进行比较,Q-Q图、柱状图、星形图都是非常好的选择,下面开始实战。 (1)绘制Q-Q图 首先导入数据bankwage.csv文件,该数据集…

VSC-HVDC直流输电matlab仿真模型

微❤关注“电气仔推送”获得资料(专享优惠) VSC-HVDC直流输电仿真,换流站采用两电平结构,全控型器件(IGBT),采用双环控制,包括电压外环,电流内环,分为d、q两…

使用关键字abstract 声明抽象类-PHP8知识详解

抽象类只能作为父类使用,因为抽象类不能被实例化。抽象类使用关键字abstract 声明,具体的使用语法格式如下: abstract class 抽象类名称{ //抽象类的成员变量列表 abstract function 成员方法1(参数); //抽象类的成员方法 abstract functi…

网络基础知识面试题1

VC++常用功能开发汇总(专栏文章列表,欢迎订阅,持续更新...)https://blog.csdn.net/chenlycly/article/details/124272585C++软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续更新...)

GPU(国内外发展,概念参数(CUDA,Tensor Core等),类别,如何选型,NPU,TPU)

目录 前言 1.国内外GPU发展简述 2.GPU概念参数和选择标准 2.1 CUDA 2.2 Tensor Core 2.3 显存容量和显存位宽 2.4 精度 2.5 如何选择GPU 3.常见GPU类别和价格 3.1 GPU类别 3.2 GPU价格(部分) 3.3 GPU云服务器收费标准(以阿里云为例&a…

五.docker+jenkins自动部署项目

一.敏捷开发相关概念 1.微服务的痛点 再来看一下我们的微服务架构 , 每个组件都需要服务器去部署,加起来可能需要几十个甚至上百个服务器。这样的微服务项目在部署上会遇到什么问题? 需要很多很多的服务器,服务器的采购安装&am…

Day-06 基于 Docker 安装 Nginx 镜像

1.去官方公有仓库查询nginx镜像 docker search nginx 2.拉取该镜像 docker pull nginx 3. 启动镜像,使用nginx服务,代理本机8080端口(测试是不是好使) docker run -d -p 8080:80 --name nginx-8080 nginx docker ps curl 127.0.0.1:8080

微服务保护(Sentinel)

🍓 简介:java系列技术分享(👉持续更新中…🔥) 🍓 初衷:一起学习、一起进步、坚持不懈 🍓 如果文章内容有误与您的想法不一致,欢迎大家在评论区指正🙏 🍓 希望这篇文章对你有所帮助,欢…

云安全之等级保护详解

等级保护概念 网络安全等级保护,是对信息系统分等级实行安全保护,对信息系统中使用的安全产品实行按等级管理,对信息系统中发生的信息安全事件分等级进行响应、处置。 网络安全等级保护的核心内容是:国家制定统一的政策、标准&a…

横向AlGaN/GaN基SBD结构及物理模型数据库的开发

GaN基功率器件凭借其临界电场高、电子饱和漂移速度大、热导率高等优良性能在大功率快充、充电桩、新能源汽车等领域具备广泛应用空间。为进一步助推半导体高频、高功率微电子器件的发展进程,天津赛米卡尔科技有限公司技术团队依托先进的半导体TCAD仿真平台成功开发出…