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

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

环境

系统平台:银河麒麟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;保证数据库正常关闭,并且不用等待;

相关推荐
pengdott4 小时前
Oracle RAC内存融合技术深度解析:集群性能的幕后引擎
数据库·oracle
csudata4 小时前
绿色便携版PostgreSQL发行版重磅发布
数据库·postgresql
阳光九叶草LXGZXJ5 小时前
达梦数据库-学习-48-DmDrs控制台命令(同步之Manager、CPT模块)
linux·运维·数据库·sql·学习
我科绝伦(Huanhuan Zhou)5 小时前
脚本再升级,兼容Oracle 26ai一键安装
数据库·oracle
野生绿箭侠6 小时前
Ncos 2.3.2 版本集成达梦数据库
数据库
仍然.7 小时前
MYSQL--约束
数据库·mysql
乡野码圣7 小时前
【RK3588 Android12】RCU机制
java·jvm·数据库
亓才孓7 小时前
[数据库]应该注意的细节
数据库·sql
m0_561359678 小时前
掌握Python魔法方法(Magic Methods)
jvm·数据库·python
xxxmine8 小时前
redis学习
数据库·redis·学习