首页 > 解决方案 > Postgresql 致命的数据库系统正在启动 - Windows 10

问题描述

我已经安装postgresqlwindows 10. usb disk每天当我在工作中启动我的电脑sleep并再次插入磁盘然后尝试启动时,postgresql我都会收到此错误:

FATAL: the database system is starting up

该服务以以下命令启动:

E:\PostgresSql\pg96\pgservice.exe "//RS//PostgreSQL 9.6 Server"

它是默认的。

日志来自E:\PostgresSql\data\logs\pg96

2019-02-28 10:30:36 CET [21788]: [1-1] user=postgres,db=postgres,app=[unknown],client=::1 FATAL:  the database system is starting up
2019-02-28 10:31:08 CET [9796]: [1-1] user=postgres,db=postgres,app=[unknown],client=::1 FATAL:  the database system is starting up

我希望这种启动更快地发生。

标签: postgresql

解决方案


当您将数据提交到 Postgres 数据库时,唯一立即保存到磁盘的是预写日志实际的表更改仅应用于内存缓冲区,并且在下一个检查点之前不会永久保存到磁盘。

如果服务器突然停止,或者突然失去对文件系统的访问权限,那么内存中的所有内容都会丢失,下次启动时,它需要重放日志以恢复表正确的状态(这可能需要很长时间,取决于自上次检查点以来发生了多少)。在完成之前,任何使用服务器的尝试都将导致FATAL: the database system is starting up.

如果您确保在拔出磁盘之前完全关闭服务器 - 给它一个设置检查点并刷新其所有缓冲区的机会 - 那么它应该能够或多或少地立即重新启动。


推荐阅读