PostgreSQL启动恢复期间,恢复到的时间线的确定
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,1、启动恢复时,确定恢复到的时间线recoveryTargetTLI1)归档恢复点比checkpoint中记录的时间线大,那么选择归档恢复点作为目标时间线2)否则,checkpoint记录中的时间线作
千家信息网最后更新 2026年11月01日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安全错误
数据库的锁怎样保障安全
互联网科技官网
礼当家互联网科技
紫鲸互联网科技
唐信互联网科技 大连
互联网金融 科技创新
互联网科技公司做什么
顺网科技2021年互联网排名
深圳前海聚择互联网科技有限公司
互联网教育科技公司vipkid
互联网科技实习生岗位职责
字节跳动和互联网科技
互联网为啥属于高科技
特约风豹互联网科技为什么扣费
互联网公司高科技产品
吉林省码上互联网科技电话
互联网科技接地气
普陀区互联网教育科技管理办法
互联网科技机房
玉溪新华互联网科技怎么选
恒生科技指数 中概互联网
科技互联网
互联网科技公司起名
科技互联网产品
互联网科技社
互联网科技作文
互联网科技公司做什么
农村开互联网科技讲堂
崇明区互联网教育科技售后服务
互联网金融科技公司的优势
黑龙江互联网科技公司