PostgreSQL启动恢复过程中日志源的切换
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,日志源会在XLOG_FROM_ARCHIVE->XLOG_FROM_STREAM->XLOG_FROM_ARCHIVE直接切换,只有读取过程中出错,就会切换到另外一个日志源。但实际执行过程中,XLOG
千家信息网最后更新 2026年11月01日PostgreSQL启动恢复过程中日志源的切换
日志源会在XLOG_FROM_ARCHIVE->XLOG_FROM_STREAM->XLOG_FROM_ARCHIVE直接切换,只有读取过程中出错,就会切换到另外一个日志源。但实际执行过程中,XLOG_FROM_ARCHIVE出错后会到XLOG_FROM_PG_WAL读取,但是日志源的变量并不会改变。这个需要注意。
static intXLogFileReadAnyTLI(XLogSegNo segno, int emode, int source){ if (expectedTLEs) tles = expectedTLEs; else tles = readTimeLineHistory(recoveryTargetTLI); /* 1、WaitForWALToBecomeAvailable调用时,source是XLOG_FROM_ARCHIVE时,会使用XLOG_FROM_ANY 2、使用XLOG_FROM_ANY,会首先从归档中读取xlog,如果open失败,则会使用XLOG_FROM_PG_WAL 3、外部日志源变量并没有切换 */ foreach(cell, tles){ TimeLineID tli = ((TimeLineHistoryEntry *) lfirst(cell))->tli; if (tli < curFileTLI) break; /* don't bother looking at too-old TLIs */ if (source == XLOG_FROM_ANY || source == XLOG_FROM_ARCHIVE){ fd = XLogFileRead(segno, emode, tli,XLOG_FROM_ARCHIVE, true); if (fd != -1){ if (!expectedTLEs) expectedTLEs = tles; return fd; } } if (source == XLOG_FROM_ANY || source == XLOG_FROM_PG_WAL){ fd = XLogFileRead(segno, emode, tli, XLOG_FROM_PG_WAL, true); if (fd != -1){ if (!expectedTLEs) expectedTLEs = tles; return fd; } } } return -1;}
日志
切换
过程
变量
只有
实际
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
小米移动互联网科技园
江苏根荣互联网科技
广州百单互联网科技有限公司
重生之互联网科技帝国
深圳科技互联网
互联网科技小贷
碳银互联网科技
美国互联网黑科技
唐信互联网科技 大连
互联网科技论坛
互联网科技公司的市场部门
创业天下互联网科技有限公司
成都互联网科技公司100强
智腾互联网科技有限公司
互联网科技研发水平
无锡工业互联网科技有限公司
科技互联网海报
唐山双旺合互联网科技产业园
安徽零酒互联网科技有限公司
互联网科技品牌
互联网和科技技术
汉立互联网科技有限公司联系电话
成都互联网科技公司工作好不好
互联网科技扶贫时间
互联网科技人工智能实验室
互联网行业科技股
互联网相关科技技术
郑州欣桑互联网科技有限公司
互联网科技职业技能培训学校
现代科技的标志之一的互联网