PostgreSQL recovery.conf恢复配置
PostgreSQL recovery.conf恢复配置
这一章描述recovery.conf 文件中可用的设置。它们只应用于恢复期。对于你希望执行的任意后续恢复, 它们必须被重置。一旦恢复已经开始,它们就不能被更改。
recovery.conf中的设置以name = ’value’的形式指定。 每一行指定一个参数。井号(#)表示行的剩余部分是一段注释。 要在一个参数值中嵌入一个单引号,将其双写(”)。
在安装的share/目录中提供了一个例子文件, share/recovery.conf.sample。
1. 归档恢复设置
restore_command (string)用于获取 WAL 文件系列的一个已归档段的本地 shell 命令。
这个参数是归档恢复所必需的,但是对于流复制是可选的。
在该字符串中的任何 %f会被替换为从归档中检索的文件的名字,并且任何%p 会被在服务器上的复制目标路径名替换(该路径名是相对于当前工
作目录的, 即集簇的数据目录)。任何%r会被包含上一个可用重启点的文件的名字所替换。
很重要的一点是,该命令只有在成功时才返回一个零退出状态。 该命令将会被询问归档中不存在的文件名, 当这样被询问时它必须返回非零。例子:
restore_command = ’cp /mnt/server/archivedir/%f "%p"’
restore_command = ’copy "C:\\server\\archivedir\\%f" "%p"’ # Windows
archive_cleanup_command (string)
archive_cleanup_command的目的是为清理后备服务器不再需要的旧的已归档 WAL 文件提供一种机制。任何%r会被替换为包含最后一个可用重启点的文件的名称。
archive_cleanup_command = ’pg_archivecleanup /mnt/server/archivedir %r’
但是注意,如果多个后备服务器正在从同一个归档目录中恢复, 你将需要保证只有当任意服务器都不再需要 WAL 文件时才会删除它们。
recovery_end_command (string)的目的是为复制或恢复之后的清除提供一种机制。
与archive_cleanup_command中相似,任何%r 会被替换为包含最后一个可用重启点的文件的名称
2. 恢复目标设置
recovery_target = ’immediate’指定恢复应该在达到一个一致状态后尽快结束,即尽早结束。 在从一个在线备份中恢复时,这意味着备份结束的那个点。
recovery_target_name (string)指定恢复将继续进行的已命名的恢复点 (pg_create_restore_point()创建)。
recovery_target_time (timestamp)这个参数指定恢复将继续执行的时间戳。精确的停止点也受到recovery_target_inclusive的影响。
recovery_target_xid (string)指定恢复将继续执行的事务ID。
recovery_target_inclusive (boolean)指定我们是否在指定的恢复目标之后停止(true), 或者在恢复目标之前停止(false)。
recovery_target_timeline (string)指定恢复到一个特定的时间线中。默认值是沿着基础备份建立时的当前时间线恢复。
将这个参数设置为latest会恢复到该归档中能找到的最新的时间线, 这在一个后备服务器中有用。
recovery_target_action (enum) (boolean)指定当到达恢复目标时服务器应该采取什么动作。默认值是pause, 这意味着将暂停恢复。
promote意味着将结束恢复进程并且服务器开始接受连接。 shutdown将在到达恢复目标后停止服务器。
3. 备用服务器设置
standby_mode (boolean)指定是否将PostgreSQL服务器作为一个后备服务器启动。
如果这个参数为on,当到达已归档 WAL 末尾时该服务器将不会停止恢复, 但是将通过使用restore_command获得
新的 WAL 段以及/或者通过使用 primary_conninfo设置连接到主服务器来尝试继续恢复
primary_conninfo (string)指定后备服务器用来连接主服务器的连接字符串。
如果standby_mode为off,这个设置没有效果。
primary_slot_name (string)可选的指定在通过流复制连接到主服务器时要使用的现有复制槽, 以控制上游节点上的
资源删除。 如果没有设置primary_conninfo,则这个设置无效。
trigger_file (string)指定一个触发器文件,该文件的存在会结束后备机中的恢复。即使没有设置这个值, 你
也能够使用pg_ctl promote来提升后备机。 如果standby_mode为off,则这个设置没有效果。
recovery_min_apply_delay (integer)默认情况下,后备服务器会尽快恢复来自于主服务器的 WAL 记录。
PostgreSQL recovery.conf恢复配置的更多相关文章
- postgresql recovery.conf改变需要重启吗
之前在研究pgpoll时,发现trigger_file参数指定的文件存在后,会自动将standby节点提升为可写节点.不需要手动执行pg_ctl promote,但是这个时间一般有延迟,因为进程会定期 ...
- postgresql recovery.conf文件内容说明
在配置PG主备流复制.HA时,需要用到recovery.conf文件,这里根据自己的了解做个记录: standby_mode = 'on' #说明自己是备库 primary_conninfo = 'u ...
- PostgreSQL 备份和恢复
备份和恢复有三种不同的基本方法来备份PostgreSQL数据SQL转储文件系统级备份File system level backup连续归档 1. SQL转储 pg_dump dbname > ...
- recovery.conf文件详解
在恢复过程中,用户可以通过使用recovery.conf文件来指定恢复的各个参数,如下: 归档恢复设置 restore_command:用于获取一个已归档段的XLOG日志文件的命令 archive_c ...
- centos下postgresql的安装与配置[转]
本文摘自:http://blog.chinaunix.net/uid-24846094-id-78490.html 一.安装(以root身份进行) 1.检出最新的postgresql的yum配置从ht ...
- FATAL: using recovery command file "recovery.conf" is not supported
PostgreSQL12 附录 E. 版本说明 将recovery.conf设置移动到postgresql.conf中. (Masao Fujii, Simon Riggs, Abhijit Meno ...
- PHP7中php.ini、php-fpm和www.conf的配置
引自:https://typecodes.com/web/php7configure.html 1 配置php.ini php.ini是php运行核心配置文件: ######避免PHP信息暴露在htt ...
- WampServer 在 httpd.conf 中配置多站点 (IP 配置法:不用每次修改 hosts 文件 + 域名配置法 )
因为要用 ThinkPHP 的当前最新版本 3.2.2,对应要求 PHP 的版本要高于 5.3.0,所以安装了 WampServer 2.2 ( Apache 2.2.21,PHP 5.3.10,My ...
- Php和httpd.conf的配置
http://www.cnblogs.com/homezzm/archive/2012/08/01/2618062.html http://book.51cto.com/art/201309/4096 ...
随机推荐
- Spring中为什么实体类不用注入
要理解为什么不用注入,首先就清楚注入的目的是什么?如果不注入,在程序中要使用某个类对象的方法,则需要去new一个对象.然后我们调用其中的方法,众所周知"程序=算法+数据".不失一般 ...
- sqlserver ,镜像数据库,CDC,实时监控数据变化
1.数据库镜像配置 1)主机环境:计算机名称修改SQL1.xiaoping.com 添加用户sqluser 密码永不变,率属于administrators sqlserver安装时,将所有sqlser ...
- Quartz实现定时任务实例
1首先实现Job接口,创建任务 public class HelloJob implements Job{ @Override public void execute(JobExecutionCont ...
- PyCharm 的初始设置2 - 打开、新建项目
03. 新建/打开一个 Python 项目 3.1 项目简介 开发 项目 就是开发一个 专门解决一个复杂业务功能的软件 通常每 一个项目 就具有一个 独立专属的目录,用于保存 所有和项目相关的文件 – ...
- Spinner使用二
Spinner使用二 一.效果图 二.方法及核心函数 三.代码 后面补
- python3 使用pymysql
#! /usr/bin/env python3 # coding = utf-8 import random import pymysql # 连接数据库函数 def connDB(data): co ...
- HDU 1052 贪心+dp
http://acm.hdu.edu.cn/showproblem.php?pid=1052 Tian Ji -- The Horse Racing Time Limit: 2000/1000 MS ...
- NAVICAT PREMIUM 初识
1 问题运行SQL取数语句出错?. 答案:因为运行SQL文件时没有这个表.新的数据库里面 解决方法: 获取需要建立的二维表创建语句 新建查询 输入语句,点击运行即可 解释注释语句: 主体为五个字段的主 ...
- tableau join 与格式问题
一开始我没有找到它的join 方法.其实应该是编辑相应的join关系.选择数据源,选择字段.数据源是可以选择的. 剩下的计算问题,要再弄下.不好说,这个其实烦了我很久了. 高级选项,扩展最大行数.即可 ...
- element-ui树结构懒加载
在实际项目中,往往树结构数据量较大,这时树节点必须懒加载 element-ui树的懒加载: <div style="width:100%;height:420px;overflow: ...