数据库未正常关闭后,再次启动时只有主进程,数据库日志无输出

瀚高数据库
目录
环境
症状
问题原因
解决方案

环境

系统平台:银河麒麟svs(X86_64)

版本:4.5.8
症状

现象:使用pg_ctl stop停止数据库,未正常关闭;使用pg_ctl stop -m i 强制关闭数据库后,再次启动数据库,启动失败;只有数据库主进程,查询数据库日志没有任何输出;

使用strace跟踪数据库主进程显示数据库在处理base/pgsql_tmp目录下的文件:

问题原因

base/pgsql_tmp目录用来支持一些需要临时存储空间的操作,比如排序、大型查询等;目录大小跟随这些操作变化,当数据库关闭时,数据库没有任何操作,则目录为空;但当前目录不为空,导致报错,也是强制关闭数据库导致的。

解决方案

1、查询数据库进程是否正常,若只有主进程,则kill;

2、将pgsql_tmp目录下的文件移动到其他目录下;

解决:数据库关闭时,先执行checkpoint;保证数据库正常关闭,并且不用等待;

相关推荐
星马梦缘1 天前
数据库作战记录1
数据库·sql·mysql
短剑重铸之日1 天前
《ShardingSphere解读》07 读写分离:如何集成分库分表+数据库主从架构?
java·数据库·后端·架构·shardingsphere·分库分表
njidf1 天前
用Python制作一个文字冒险游戏
jvm·数据库·python
鸡蛋灌Bean1 天前
MySQL优化系列
数据库·mysql
数巨小码人1 天前
平滑迁移:传统到国产数据库的2026转型之路
数据库
麦聪聊数据1 天前
QuickAPI 在系统数据 API 化中的架构选型与集成
数据库·sql·低代码·微服务·架构
2403_835568471 天前
自然语言处理(NLP)入门:使用NLTK和Spacy
jvm·数据库·python
wal13145201 天前
Dify发布V1.13.1版本,Hologres 向量数据库支持、HITL 邮件 Markdown 渲染及多项安全加固
数据库·安全·dify
Leon-Ning Liu1 天前
Oracle UNDO表空间文件误删除故障恢复
数据库·oracle
2301_776508721 天前
用Python生成艺术:分形与算法绘图
jvm·数据库·python