无法在 PostgreSQL 9.5 中 运行 psql
Cannot run psql in PostgreSQL 9.5
我在 Ubuntu 16.04 LTS 上使用 PostgreSQL 9.5。
我在键入 psql
:
时收到以下错误
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
检查 /var/log/postgresql/postgresql-9.5-main.log
中的日志时,我看到错误为:
2018-11-26 13:17:41 IST [3508-1] FATAL: could not access private key file "/etc/ssl/private/ssl-cert-snakeoil.key": Permission denied
以下是 /etc/ssl/private
和 ssl-cert-snakeoil.key
文件的权限:
vivek@vivek-ThinkPad-E480:~$ ls -l /etc/ssl
total 36
drwxr-xr-x 2 root root 20480 Nov 22 13:06 certs
-rwxr-xr-x 1 root root 10835 Dec 8 2017 openssl.cnf
drwxr--r-- 2 root ssl-cert 4096 Nov 22 13:06 private
vivek@vivek-ThinkPad-E480:~$ sudo ls -l /etc/ssl/private
total 4
-rw-r----- 1 root ssl-cert 1704 Nov 22 13:06 ssl-cert-snakeoil.key
postgres
用户也被添加到组 ssl-cert
。
vivek@vivek-ThinkPad-E480:~$ getent group ssl-cert
ssl-cert:x:112:postgres
注意: 我发现 /var/lib/postgresql/9.5/main
中没有 server.key
。
我也在 DBA Stackexchange 上发布了这个,但还没有回复。
谁能指导我正确设置权限?
那永远行不通,您的服务器将无法启动,因为 OS 用户 postgres
无权访问 etc/ssl/private
.[=16= 中的文件]
要允许组 ssl-cert
中的用户访问目录中的文件,运行
chmod g+x /etc/ssl/private
在进行操作时,请确保 /etc/ssl
具有所需的权限。
要测试是否一切正常,请成为用户 postgres
并尝试读取文件。
我在 Ubuntu 16.04 LTS 上使用 PostgreSQL 9.5。
我在键入 psql
:
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
检查 /var/log/postgresql/postgresql-9.5-main.log
中的日志时,我看到错误为:
2018-11-26 13:17:41 IST [3508-1] FATAL: could not access private key file "/etc/ssl/private/ssl-cert-snakeoil.key": Permission denied
以下是 /etc/ssl/private
和 ssl-cert-snakeoil.key
文件的权限:
vivek@vivek-ThinkPad-E480:~$ ls -l /etc/ssl
total 36
drwxr-xr-x 2 root root 20480 Nov 22 13:06 certs
-rwxr-xr-x 1 root root 10835 Dec 8 2017 openssl.cnf
drwxr--r-- 2 root ssl-cert 4096 Nov 22 13:06 private
vivek@vivek-ThinkPad-E480:~$ sudo ls -l /etc/ssl/private
total 4
-rw-r----- 1 root ssl-cert 1704 Nov 22 13:06 ssl-cert-snakeoil.key
postgres
用户也被添加到组 ssl-cert
。
vivek@vivek-ThinkPad-E480:~$ getent group ssl-cert
ssl-cert:x:112:postgres
注意: 我发现 /var/lib/postgresql/9.5/main
中没有 server.key
。
我也在 DBA Stackexchange 上发布了这个,但还没有回复。
谁能指导我正确设置权限?
那永远行不通,您的服务器将无法启动,因为 OS 用户 postgres
无权访问 etc/ssl/private
.[=16= 中的文件]
要允许组 ssl-cert
中的用户访问目录中的文件,运行
chmod g+x /etc/ssl/private
在进行操作时,请确保 /etc/ssl
具有所需的权限。
要测试是否一切正常,请成为用户 postgres
并尝试读取文件。