当前位置: 首页 > news >正文

Docker运行postgreSQL,由于异常启动或者退出后,提示could not locate a valid checkpoint record

pg_resetwal 是 PostgreSQL 的“急救工具”,用于在极端情况下修复因 WAL 或控制文件损坏导致的启动问题。

但需注意:

  • 风险极高,可能导致数据不一致。
  • 必须立即转储并恢复,避免直接在修复后的数据库中执行写操作。
  • 仅在备份后使用,并优先尝试其他故障排除步骤(如检查磁盘、修复权限)。

问题解决方案:

1、新建一个docker容器挂载持久化数据目录,进入容器执行以下命令

# 新起一个容器挂载之前的持久化数据目录
docker run -it -v /opt/dev/docker/volumes/db/data:/var/lib/postgresql/data postgres:15-alpine /bin/bash

# 切换到postgres账户
su postgres

# 使用下面的命令重置wal日志
pg_resetwal -f /var/lib/postgres/data

执行完毕后,看到类似 "Write-ahead log reset" 这种提示就重置成功了

2、备份原有的持久化数据目录,再重启之前的pg容器

# 备份旧数据
tar -czf pgdata-20250318.tar.gz pgdata/

# 重启容器观察启动日志和状态
docker restart xxxxxx
http://www.dtcms.com/a/76208.html

相关文章:

  • JS—事件委托:3分钟掌握事件委托
  • vlan初学的总结
  • NLP高频面试题(四)——BN和LN的区别与联系,为什么attention要用LN
  • Visual Studio2022 中的键盘注释快捷方式
  • 多线程(四)----线程安全
  • 力扣刷题994. 腐烂的橘子
  • 比特币牛市还在不在
  • 「Wi-Fi学习」节能模式
  • Java常用类
  • Android第四次面试总结(基础算法篇)
  • LeetCode-274.H 指数
  • C#进阶(多线程相关)
  • SMT贴片机销售实战技巧解析
  • Python高级:GIL、C扩展与分布式系统深度解析
  • 汽车机械钥匙升级一键启动的优点
  • CentOS下安装ElasticSearch(日志分析)
  • 项目实战:基于瑞萨RA6M5构建多节点OTA升级-创建系统最小框架<三>
  • 【SpringMVC】深入解析基于Spring MVC与AJAX的用户登录全流程——参数校验、Session管理、前后端交互与安全实践
  • CXSMILES介绍
  • 【Linux】浅谈环境变量和进程地址空间
  • APP测试
  • c++初阶易错题(选择)
  • Linux: qemu-user-static 是如何工作的?
  • 初探自定义注意力机制:DAttention的设计与实现
  • 力扣128. 最长连续序列 || 452. 用最少数量的箭引爆气球
  • 如何打造安全稳定的亚马逊采购测评自养号下单系统?
  • 【微知】ip命令如何查看路由表?如何查看IPv6的路由表?(ip r s、ip -6 r s)
  • 【Netty】SimpleChannelInboundHandler如何根据数据类型处理消息
  • 区块链 智能合约安全 | 整型溢出漏洞
  • 对于memset(b, 1, sizeof b)赋值为16843009情况