Postgresql connections on Unix domain socket "/tmp/.s.PGSQL.5432"?

有时候连接数据库会提示 /tmp/.s.PGSQL.5432 的问题,网上各种都说是 postmaster.pid的相关。

很多都是删除 postmaster.pid,但是我在系统中根本没有找到postmaster.pid相关的文件,

Postgresql connections on Unix domain socket
image.png

出现这种情况的时候我是按照如下步骤解决问题的。

1、检查自己 PGPATH PGDATA 是否进行设置。

2、检查设置的PGDATA是否存在

3、如果不存在,手动创建一个data目录(这个data目录是在PGPATH目录下创建)

4、initdb -D PGDATA (初始化数据目录)

5、执行 psql (如果顺利的话就直接运行成功了。)

6、报错

image.png

说是数据库不存在,

7、执行 psql —help 可以看到这里默认链接的数据库名称,然后创建一个同名的数据库。

Postgresql connections on Unix domain socket
image.png

8、 运行 psql 就可以了。

如果有其他问题,欢迎交流沟通。

Postgresql connections on Unix domain socket
image.png

你可能感兴趣的:(Postgresql connections on Unix domain socket "/tmp/.s.PGSQL.5432"?)