PostgreSQL启动恢复期间,恢复到的时间线的确定
发表于:2025-11-11 作者:千家信息网编辑
千家信息网最后更新 2025年11月11日,1、启动恢复时,确定恢复到的时间线recoveryTargetTLI1)归档恢复点比checkpoint中记录的时间线大,那么选择归档恢复点作为目标时间线2)否则,checkpoint记录中的时间线作
千家信息网最后更新 2025年11月11日PostgreSQL启动恢复期间,恢复到的时间线的确定
1、启动恢复时,确定恢复到的时间线recoveryTargetTLI
1)归档恢复点比checkpoint中记录的时间线大,那么选择归档恢复点作为目标时间线
2)否则,checkpoint记录中的时间线作为目标时间线
StartupXLOG-> if (ControlFile->minRecoveryPointTLI > ControlFile->checkPointCopy.ThisTimeLineID) recoveryTargetTLI = ControlFile->minRecoveryPointTLI; else recoveryTargetTLI = ControlFile->checkPointCopy.ThisTimeLineID; ...
2、接着从recovery.conf文件中读取
1)若设置了recovery_target_timeline值,并且设为latest,那么history列表最大的时间线即为目标时间线
2)否则是recovery.conf文件中设置的时间线值
3)若没有设置recovery_target_timeline值,则目标时间线为第一步中的值
StartupXLOG->readRecoveryCommandFile()-> for (item = head; item; item = item->next){ if (strcmp(item->name, "restore_command") == 0){ ... }else if ... else if(strcmp(item->name, "recovery_target_timeline") == 0){ rtliGiven = true; if (strcmp(item->value, "latest") == 0) rtli = 0; else rtli = (TimeLineID) strtoul(item->value, NULL, 0); }else if... } if (rtliGiven){ if (rtli){ recoveryTargetTLI = rtli; recoveryTargetIsLatest = false; }else{ /* We start the "latest" search from pg_control's timeline */ recoveryTargetTLI = findNewestTimeLine(recoveryTargetTLI); recoveryTargetIsLatest = true; } }
时间
目标
文件
最大
中设
选择
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
苏州有哪些分布式存储服务器
河南电力科技互联网部
数据库当前脚本错误
数据库数据降序排列
警察网络安全管理工资
网络安全法中对于个人的约束
华为手机的服务器在哪一个页面
上海连恩商钥互联网科技
企业网络安全工程师穿搭
数据库口令失效原因
千锋网络安全2019百度云
globe数据库
联想服务器点哪个键进入pxe
网络安全专业要编程吗
广西中小学生网络安全教育平台
苹果手机登录id弹出服务器错误
大学数据库总结
文档软件开发高品质的选择
国际服刺激战场服务器版本
a股有多少家软件开发企业
阿里海外服务器翻墙
db2数据库用户标识和密码
遵义ibm服务器专卖
想做软件开发该怎么办
市北区直播软件开发公司有哪些
网络安全驻场运维
市统计局网络安全责任制
苏州打造智慧工地软件开发
发包服务器购买
销售数据库及产品介绍