我知道有十几次类似的问题,但我找不到适合我的答案。
我有一台Debian 9机器,刚从安装完成后我安装了Postgresql 9.6服务器。 我正在尝试创建一个新的表空间但它失败了。命令:
CREATE TABLESPACE newTableSPace LOCATION '/DATA/PostgreSQL/';
返回以下错误:
ERROR: could not set permissions on directory "/DATA/PostgreSQL": Permission denied
SQL state: 42501
因此,经过几次基础搜索后,我已经检查了以下几点:
我的想法已经不多了。
有人有建议吗?
答案 0 :(得分:2)
我刚刚找到了解决方案!
问题是用户postgres的权限不在目录/ DATA / PostgreSQL /上,而是在目录/ DATA上,它根本没有权限(它属于拥有权限770的当前用户)。
我已将此文件夹的权限更改为775.我想另一种方法是让用户postgres属于拥有DATA文件夹的组。
答案 1 :(得分:1)
嘿,我刚刚找到了一个可能的解决方案,那就是你必须让所有人都可以访问要写入的目录。
您可以在以下视频中看到它:https://www.youtube.com/watch?v=FQzBgEFkdes
这对我创建表空间并将文件从一个目录复制到另一个目录很有用。
希望这会有所帮助。