解决启动postgresql问题var/run/postgresql/.s.PGSQL.5432

发布于:2023-09-14 ⋅ 阅读:(199) ⋅ 点赞:(0)

psql遇到麻烦

问题描述

我之前把postgresql的data_directory 换了地方,导致我打开psql会有如下错误:
Is the server running locally and accepting connections on Unix domain socket “/var/run/postgresql/.s.PGSQL.5432

解决方法

找到postgresql所在的文件夹
whereis postgresql

llxy@llxy-GS65-Stealth-9SD:/var/lib$ whereis postgresql
postgresql: /usr/lib/postgresql /etc/postgresql /usr/share/postgresql

进到 /usr/lib/postgresql/12/bin 查到 pg_ctl 存放在这里,ok记住这个路径(path1 )

llxy@llxy-GS65-Stealth-9SD:~$ cd /usr/lib/postgresql
12
llxy@llxy-GS65-Stealth-9SD:/usr/lib/postgresql$ cd 12
llxy@llxy-GS65-Stealth-9SD:/usr/lib/postgresql/12$ ls
bin  lib
llxy@llxy-GS65-Stealth-9SD:/usr/lib/postgresql/12$ ls bin
clusterdb   initdb             pg_checksums    pg_dumpall      pg_restore      pg_upgrade  reindexdb
createdb    oid2name           pg_config       pg_isready      pg_rewind       pg_waldump  vacuumdb
createuser  pg_archivecleanup  pg_controldata  pg_receivewal   pg_standby      postgres    vacuumlo
dropdb      pg_basebackup      pg_ctl          pg_recvlogical  pg_test_fsync   postmaster
dropuser    pgbench            pg_dump         pg_resetwal     pg_test_timing  psql

再找到更改后的 data_directory做存的文件夹,我存放在/bigdisk/pgdata,同样记住这个路径(path2)

切换到 postgresql 用户

su - postgres

postgres@llxy-GS65-Stealth-9SD:D:~$ sudo /usr/lib/postgresql/12/bin/pg_ctl -D /home/llxy/bigdisk/pgdata start

pg_ctl: another server might be running; trying to start server anyway
waiting for server to start....2022-12-05 16:00:32.069 CST [31906] LOG:  starting PostgreSQL 12.12 (Ubuntu 12.12-0ubuntu0.20.04.1) on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0, 64-bit
2022-12-05 16:00:32.069 CST [31906] LOG:  listening on IPv4 address "127.0.0.1", port 5432
2022-12-05 16:00:32.074 CST [31906] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2022-12-05 16:00:32.157 CST [31907] LOG:  database system shutdown was interrupted; last known up at 2022-12-05 16:00:04 CST
..2022-12-05 16:00:34.073 CST [31907] LOG:  database system was not properly shut down; automatic recovery in progress
2022-12-05 16:00:34.085 CST [31907] LOG:  redo starts at D/AC1D948
2022-12-05 16:00:34.085 CST [31907] LOG:  invalid record length at D/AC1DA30: wanted 24, got 0
2022-12-05 16:00:34.085 CST [31907] LOG:  redo done at D/AC1D9F8
2022-12-05 16:00:34.208 CST [31906] LOG:  database system is ready to accept connections
 done
server started

把上面的换成path1 pth2就行, be like:

sudo path1/pg_ctl -D path2 start

然后就接着启动psql,就ok啦

postgres@llxy-GS65-Stealth-9SD:~$ psql
psql (12.12 (Ubuntu 12.12-0ubuntu0.20.04.1))
Type "help" for help.

postgres=#