温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

PostgreSQL数据库启动时socket存储目录的配置是什么

发布时间:2021-11-08 14:43:25 来源:亿速云 阅读:497 作者:iii 栏目:关系型数据库

这篇文章主要讲解了“PostgreSQL数据库启动时socket存储目录的配置是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PostgreSQL数据库启动时socket存储目录的配置是什么”吧!

unix_socket_directories参数默认为/tmp,由于该目录是临时目录,以免误操作,一般设置在其他目录中。
下面把unix_socket_directories设置为/data/pg12,重新启动

[pg12@localhost pg120db]$ grep 'unix' postgresql.conf 
unix_socket_directories = '/data/pg12' # comma-separated list of directories
#unix_socket_directories = '/tmp'   # comma-separated list of directories
#unix_socket_group = ''       # (change requires restart)
#unix_socket_permissions = 0777     # begin with 0 to use octal notation
[pg12@localhost pg120db]$ 
[pg12@localhost pg120db]$ pg_ctl restart
pg_ctl: PID file "/data/pgsql/pg120db/postmaster.pid" does not exist
Is server running?
trying to start server anyway
waiting for server to start....2019-11-18 18:17:35.123 CST [15542] LOG:  starting PostgreSQL 12.0 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-16), 64-bit
2019-11-18 18:17:35.123 CST [15542] LOG:  listening on IPv4 address "0.0.0.0", port 5432
2019-11-18 18:17:35.123 CST [15542] LOG:  listening on IPv6 address "::", port 5432
2019-11-18 18:17:35.155 CST [15542] LOG:  listening on Unix socket "/data/pg12/.s.PGSQL.5432"
2019-11-18 18:17:35.237 CST [15542] LOG:  redirecting log output to logging collector process
2019-11-18 18:17:35.237 CST [15542] HINT:  Future log output will appear in directory "pg_log".
 done
server started

尝试连接数据库

[pg12@localhost pg120db]$ psql -d testdb
psql: error: could not connect to server: 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.5432"?

提示找不到socket(默认在/tmp下),可使用指定主机&端口连接


但这样的连接方式不是本地连接

[pg12@localhost ~]$ netstat -anpo|grep psql
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
tcp6       0      0 ::1:52206               ::1:5432                ESTABLISHED 16200/psql           keepalive (7207.79/0/0)

设置参数PGHOST,使用本地连接(PGHOST behaves the same as the host connection parameter.)

[pg12@localhost pg120db]$ export PGHOST=/data/pg12
[pg12@localhost pg120db]$ psql -d testdb
Expanded display is used automatically.
psql (12.0)
Type "help" for help.
...
[pg12@localhost ~]$ netstat -anpo|grep psql
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
unix  3      [ ]         STREAM     CONNECTED     876042   15681/psql           
[pg12@localhost ~]$

或者使用-h指定为socket所在目录

[pg12@localhost ~]$ psql -h /data/pg12
Expanded display is used automatically.
psql (12.0)
Type "help" for help.
[local:/data/pg12]:5432 pg12@testdb=# 
...
[pg12@localhost ~]$ netstat -anpo|grep psql
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
unix  3      [ ]         STREAM     CONNECTED     880596   16309/psql           
[pg12@localhost ~]$

感谢各位的阅读,以上就是“PostgreSQL数据库启动时socket存储目录的配置是什么”的内容了,经过本文的学习后,相信大家对PostgreSQL数据库启动时socket存储目录的配置是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI