Postgresql:由于权限无法创建表空间

问题描述 投票:2回答:1

我知道有十几次类似的问题,但我找不到对我有用的答案。

我有一台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

因此,经过几次基础搜索,我已经检查了以下几点:

  • 目录/ DATA / PostgreSQL存在
  • 它的所有者/团体是postgres:postgres
  • 目录上的权限是770
  • SELinux显然没有安装(在Synaptic中,安装了libselinux1,但我尝试过的所有selinux命令都返回了“命令未找到”。例如:selinuxenabled,setenforce 0)。

我的想法已经不多了。

有人有建议吗?

postgresql permissions postgresql-9.6 tablespace
1个回答
2
投票

我刚刚找到了解决方案!

问题是用户postgres的权限不在目录/ DATA / PostgreSQL /上,而是在目录/ DATA上,它根本没有权限(它属于拥有权限770的当前用户)。

我已将此文件夹的权限更改为775.我想另一种方法是让用户postgres属于拥有DATA文件夹的组。

© www.soinside.com 2019 - 2024. All rights reserved.