首页 > 解决方案 > Postgresql 13 LOG:无法重命名文件“pg_wal/0000000100000001000000C6”

问题描述

我的 postgresql 日志文件中出现了一些非常奇怪的东西。我将 postgresql 版本从 13.0 更新到 13.1,它是同一件事:

2020-12-21 15:17:55.652 EET [4316] LOG:  starting PostgreSQL 13.1, compiled by Visual C++ build 1914, 64-bit

2020-12-21 15:17:55.657 EET [4316] LOG:  listening on IPv6 address "::", port 5432

2020-12-21 15:17:55.660 EET [4316] LOG:  listening on IPv4 address "0.0.0.0", port 5432

2020-12-21 15:17:55.998 EET [5224] LOG:  database system was shut down at 2020-12-21 15:17:01 EET

2020-12-21 15:17:56.075 EET [4316] LOG:  database system is ready to accept connections

2020-12-21 16:43:14.938 EET [7832] LOG:  could not rename file "pg_wal/0000000100000001000000C6": Permission denied

2020-12-21 16:48:17.949 EET [7832] LOG:  could not rename file "pg_wal/0000000100000001000000C6": Permission denied

2020-12-21 16:53:15.911 EET [7832] LOG:  could not rename file "pg_wal/0000000100000001000000C6": Permission denied

2020-12-21 16:58:14.865 EET [7832] LOG:  could not rename file "pg_wal/0000000100000001000000C6": Permission denied

2020-12-21 17:03:14.730 EET [7832] LOG:  could not rename file "pg_wal/0000000100000001000000C6": Permission denied

找不到有关该消息的任何信息。重新启动服务并经过一段时间后,该消息开始每 5 分钟显示一次。我知道那是因为,checkpoint_timeout = 5min但这就是我所知道的。有人帮我吗?

标签: postgresql

解决方案


可能是某人或某物锁定或修改了此文件的权限。也许它是防病毒软件(应始终防止弄乱数据目录)。

但是PostgreSQL 中也有一个 bug导致了这个问题。此错误已通过PostgreSQL 13.3 和 v14 或更高版本中的提交909b449e00fc修复(该错误是在 v13 中引入的)。


推荐阅读