postgresql启动故障【已解决】

打印 上一主题 下一主题

主题 1039|帖子 1039|积分 3117

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
故障原因

暂时未知,电脑重启后postgresql无法正常运行,尝试重启碰到如下错误
本地计算机 上的 postgresql-x64-12 服务启动后制止。某些服务在未由其他服务或程序使用时将主动制止。

排查过程


  • 查看系统日记,发现pid已存在【计算机管理——系统工具——事件查看器——Windows日记
  • 尝试kill 5432端口,再次启动照旧失败
  • 查看系统日记,发现连接超时????
  • 奇怪了woc,果断重启电脑,不可玄学失败!!!
  • ...

解决过程

1、使用pg_resetwal下令重置 WAL日记
起首进入postgresql\bin目录
然后实行以下下令
注:D:\ABC\postgresql\data为自己postgresql下的data目录!!!
  1. pg_resetwal.exe -D D:\ABC\postgresql\data
复制代码


2、既然他说存在了,那就删,删除之后再实行刚才的下令


查5432端口???行


wocl啥也没有!!!
3、用-f重置得了
  1. pg_resetwal.exe -f D:\ABC\postgresql\data
复制代码


4、完事,启动试试
  1. pg_ctl start -D D:\ABC\postgresql\data
复制代码


结局是好的!!!
人是懵逼的,为什么忽然会启动不了?
GPT说

重置预写日记(Write-Ahead Logging,WAL)通常是在必要修复或规复 PostgreSQL 数据库时举行的操纵。WAL 是一种持久化技能,用于确保数据库在发生故障时可以或许保持一致性。在 PostgreSQL 中,WAL 日记记载了对数据库举行的所有更改操纵,例如插入、更新和删除。这些日记使得数据库可以在崩溃或断电等突发环境下快速地规复到一致的状态,从而避免数据丢失或损坏。


重置 WAL 日记可能会在以下环境下使用:

  • 数据库损坏修复:当 PostgreSQL 数据库碰到损坏或不一致的环境时,例如某些 WAL 文件损坏或丢失,可以尝试通过重置 WAL 日记来修复数据库并使其规复到一致的状态。
  • 性能调优:有时,WAL 日记文件可能会变得过大,导致磁盘空间不敷或性能下降。在这种环境下,重置 WAL 日记可以清除旧的日记文件,从而释放磁盘空间并改善性能。
  • 数据库复制:在数据库复制过程中,可能必要重置 WAL 日记以重新启动复制过程并确保主从数据库之间的一致性。
尽管重置 WAL 日记在某些环境下可能是须要的,但要留意它可能会导致数据丢失或数据库状态不一致。因此,在实行此操纵之前,请确保已经举行了充分的备份,而且了解其可能的影响。最好在非生产环境中测试此操纵,以避免不测环境的发生。

得得得,我悟了!!!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

卖不甜枣

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表