【发布时间】:2018-11-15 08:32:00
【问题描述】:
PostgreSQL 10.6 和 CentOS 7
pg_ctl status
pg_ctl: could not access directory "/var/lib/pgsql/data": Permission denied`
鉴于/var/lib/pgsql/data 拥有postgres:postgres 的所有权,pg_ctl 是否无法访问?
drwx------ 3 postgres postgres 94 Nov 14 06:43 pgsql
如何在不造成漏洞的情况下解决此问题?为什么会抛出错误?
附加信息(编辑):
su - postgres
cd /var/lib
/var/lib/pgsql: drwx------ 3 postgres postgres 94 Nov 14 06:43 pgsql
/var/lib/pgsql/10: drwx------ 4 postgres postgres 33 Nov 14 06:38 10
/var/lib/pgsql/10/data: drwx------ 20 postgres postgres 4096 Nov 15 03:47 data
【问题讨论】:
-
我完全被这个弄糊涂了,但我设法启动了 Postgres:
sudo -u postgres /usr/lib/postgresql/13/bin/pg_ctl -D /etc/postgresql/13/main start。帮助说,-D, --pgdata=DATADIR location of the database storage area,但是当我实际在那里指定数据目录时,它试图在那里找到 postgresql.conf。所以我把配置目录放在那里,它神奇地工作了。但是仍然存在两个问题:(1)sudo service postgresql start仍然无法正常工作,(2)这可能不是它应该的工作方式。
标签: postgresql centos7 pg-ctl