4

这是使用 stats() 的问题,或者只是在计算数据库大小时出现的问题。在 Windows 7 中使用 postgresql,本地主机。

这样做后的问题是:

"could not stat file "base/17436/119145": Permission denied"

我花了很多时间试图解决这个问题,直到我意识到真正的问题是什么。

所以我要自己回答。

4

3 回答 3

6

这可能有两个原因:

- 没有足够权限的数据库用户(登录角色)。

在这种情况下,请检查用户(例如“postgres”)是否具有所有控件和权限。

- 如果是本地主机,请检查您的防病毒软件,两次。

postgresql 所做的统计可能被许多防病毒软件(在我的情况下为 ESET)视为病毒移动,是误报,唯一的解决方案是找到数据库的目录(如 \PostgreSQL\9.3\data)并创建异常到您的防病毒软件中的该目录。

如您所见,第二个选项与其自身的数据库代码无关。

希望这对您有所帮助。

于 2013-11-01T22:10:42.023 回答
3

在我的情况下(正如@JB 建议的那样)重新启动 PostgreSQL 服务在某些情况下会起作用。

于 2014-12-11T14:28:28.080 回答
0

就我而言,在使用 Ctrl-C 破坏“reindexdb.exe 数据库”命令后出现此错误。我在 Windows 7 命令提示符下运行它。PostgreSQL 服务的启停解决了这个问题。

于 2016-03-29T15:15:35.527 回答