PostgreSQL 10.1 手册_部分 III. 服务器管理_第 27 章 恢复配置_27.3. 后备服务器设置

本文涉及的产品
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
云原生数据库 PolarDB MySQL 版,通用型 2核8GB 50GB
简介: 27.3. 后备服务器设置 standby_mode (boolean) 指定是否将PostgreSQL服务器作为一个后备服务器启动。如果这个参数为on,当到达已归档 WAL 末尾时该服务器将不会停止恢复,但是将通过使用restore_command获得新的 WAL 段以及/或者通过使用primary_conninfo设置连接到主服务器来尝试继续恢复。

27.3. 后备服务器设置

standby_mode (boolean)

指定是否将PostgreSQL服务器作为一个后备服务器启动。如果这个参数为on,当到达已归档 WAL 末尾时该服务器将不会停止恢复,但是将通过使用restore_command获得新的 WAL 段以及/或者通过使用primary_conninfo设置连接到主服务器来尝试继续恢复。

primary_conninfo (string)

指定后备服务器用来连接主服务器的连接字符串。这个字符串的格式在第 33.1.1 节中描述。如果在这个字符串中有任何选项未被指定,那么将检查相应的环境变量(见第 33.14 节)。如果环境变量也没有被设置,则使用默认值。

连接字符串应当指定主服务器的主机名(或地址),以及端口号(如果它和后备服务器的默认端口不同)。还要指定对应于主服务器上合适权限角色的用户名(见第 26.2.5.1 节)。如果主服务器要求口令认证,还需要提供一个口令。它可以在primary_conninfo字符串中提供,或者在后备服务器(使用replication作为数据库名)的一个单独~/.pgpass文件中提供。不要在primary_conninfo字符串中指定一个数据库名。

如果standby_modeoff,这个设置没有效果。

primary_slot_name (string)

有选择地指定通过流复制连接到主服务器时使用一个现有的复制槽来控制上游节点上的资源移除(见第 26.2.6 节)。如果没有设置primary_conninfo则这个设置无效。

trigger_file (string)

指定一个触发器文件,该文件的存在会结束后备机中的恢复。即使这个值没有被设置,你也能够使用pg_ctl promote来提升后备机。如果standby_modeoff,这个设置没有效果。

recovery_min_apply_delay (integer)

某人情况下,一个后备服务器会尽快恢复来自于主服务器的 WAL 记录。有一份数据的延时拷贝是有用的,它能提供机会纠正数据丢失错误。这个参数允许你将恢复延迟一段固定的时间,如果没有指定单位则以毫秒为单位。例如,如果你设置这个参数为5min,对于一个事务提交,只有当后备机上的系统时钟超过主服务器报告的提交时间至少 5分钟时,后备机才会重放该事务。

有可能服务器之间的复制延迟会超过这个参数的值,在这种情况下则不会增加延迟。注意延迟是根据主服务器上写 WAL 的时间戳以及后备机上的当前时间来计算。由于网络延迟或者级联复制配置导致的传输延迟可能会显著地减少实际等待时间。如果主服务器和后备机上的系统时钟不同步,这会导致恢复比预期的更早应用记录。但这不是一个主要问题,因为这个参数有用的设置比服务器之间的典型事件偏差要大得多。

只有在事务提交的 WAL 记录上才会发生延迟。其他记录还是会被尽可能快地重放,这不会成为问题,因为 MVCC 可见性规则确保了在对应的提交记录被应用之前它们的效果不会被看到。

一旦恢复中的数据库已经达到一致状态,延迟就会产生,直到后备机被提升或者触发。在那之后,后备机将会结束恢复并且不再等待。

这个参数的目的是和流复制部署一起使用,但是,如果指定了该参数,所有的情况下都会遵守它。使用这个特性也会让hot_standby_feedback被延迟,这可能导致主服务器的膨胀,两者一起使用时要小心。

警告

synchronous_commit被设置为remote_apply时,同步复制会受到这个设置的影响,每一个COMMIT都需要等待被应用。

本文转自PostgreSQL中文社区,原文链接:27.3. 后备服务器设置

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍如何基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
12月前
|
存储 关系型数据库 数据库
【赵渝强老师】PostgreSQL的服务器日志文件
本文介绍了PostgreSQL数据库的物理存储结构,重点讨论了服务器日志文件。通过`pg_ctl`命令启动PostgreSQL实例时,使用`-l`参数指定日志文件位置,记录数据库启动、运行及关闭过程中的关键信息。附有相关视频讲解和日志文件示例。
306 0
|
6月前
|
存储 关系型数据库 测试技术
拯救海量数据:PostgreSQL分区表性能优化实战手册(附压测对比)
本文深入解析PostgreSQL分区表的核心原理与优化策略,涵盖性能痛点、实战案例及压测对比。首先阐述分区表作为继承表+路由规则的逻辑封装,分析分区裁剪失效、全局索引膨胀和VACUUM堆积三大性能杀手,并通过电商订单表崩溃事件说明旧分区维护的重要性。接着提出四维设计法优化分区策略,包括时间范围分区黄金法则与自动化维护体系。同时对比局部索引与全局索引性能,展示后者在特定场景下的优势。进一步探讨并行查询优化、冷热数据分层存储及故障复盘,解决分区锁竞争问题。
725 2
|
9月前
|
关系型数据库 Linux 数据库
PostgreSQL 入门指南:安装、配置与基本命令
本文从零开始,详细介绍如何在 Windows、Linux 和 macOS 上安装和配置 PostgreSQL,涵盖30+个实操代码示例。内容包括安装步骤、配置远程访问和用户权限、基础数据库操作命令(如创建表、插入和查询数据),以及常见问题的解决方案。通过学习,你将掌握 PostgreSQL 的基本使用方法,并为后续深入学习打下坚实基础。
9939 1
|
关系型数据库 MySQL Linux
在Linux中,如何配置数据库服务器(如MySQL或PostgreSQL)?
在Linux中,如何配置数据库服务器(如MySQL或PostgreSQL)?
|
SQL 分布式计算 关系型数据库
实时计算 Flink版产品使用问题之在使用FlinkCDC与PostgreSQL进行集成时,该如何配置参数
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
实时计算 Flink版产品使用问题之在使用FlinkCDC与PostgreSQL进行集成时,该如何配置参数
|
安全 关系型数据库 Linux
|
缓存 关系型数据库 数据库
postgresql.conf配置详解
postgresql.conf配置详解
|
存储 SQL 关系型数据库
Mysql学习手册(第一部分)
【5月更文挑战第17天】Mysql学习手册(第一部分)
182 0
|
存储 SQL 关系型数据库
MySQL学习手册(第一部分)
mysql日常使用记录
265 0
|
关系型数据库 网络安全 数据安全/隐私保护
你会开启Postgresql 的SSL单向认证 配置?
你会开启Postgresql 的SSL单向认证 配置?
960 0
你会开启Postgresql 的SSL单向认证 配置?

热门文章

最新文章

推荐镜像

更多