报错
[postgres@psql] (~) $ psql
psql: error: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.15432"?
原因
pg_config_manual.h 中定义默认socket目录为:
#define DEFAULT_PGSOCKET_DIR "/tmp"
postgres.conf中修改了socket目录或默认socket目录不在/tmp:
unix_socket_directories = '/data/pgdata/15432'
unix_socket_permissions = 0777
解决:
-
1.修改pg_config_manual.h目录重新编译安装
-
2.指定PGHOST变量为socket目录
[postgres@psql] (~) $ export PGHOST=/data/pgdata/15432
[postgres@psql] (~) $ psql
psql (12.6)
Type "help" for help.
postgres=# eit
postgres-#
- 3.psql -h localhost
如果设置了拒绝superuser远程登陆,则需要指定
$ psql -h localhost