问题描述
我安装了包含PostgreSQL 8.4的Bitnami Django stack。
当我运行psql -U postgres
时,我收到以下错误:
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"?
PG肯定在运行,pg_hba.conf
文件如下所示:
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
是什么赋予了?
pg正在运行的”Proof”:
root@assaf-desktop:/home/assaf# ps axf | grep postgres
14338 ? S 0:00 /opt/djangostack-1.3-0/postgresql/bin/postgres -D /opt/djangostack-1.3-0/postgresql/data -p 5432
14347 ? Ss 0:00 \_ postgres: writer process
14348 ? Ss 0:00 \_ postgres: wal writer process
14349 ? Ss 0:00 \_ postgres: autovacuum launcher process
14350 ? Ss 0:00 \_ postgres: stats collector process
15139 pts/1 S+ 0:00 \_ grep --color=auto postgres
root@assaf-desktop:/home/assaf# netstat -nltp | grep 5432
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 14338/postgres
tcp6 0 0 ::1:5432 :::* LISTEN 14338/postgres
root@assaf-desktop:/home/assaf#
最佳解决方案
此问题来自安装没有版本号的postgres
软件包。虽然将安装postgres
并且它将是正确的版本,但是设置群集的脚本将无法正确运行;这是一个包装问题。
如果您对postgres
感到满意,可以运行一个脚本来创建此集群并运行postgres
。但是,有一种更简单的方法。
首先清除旧的postgres安装。目前的问题在于9.1,所以我假设你已经安装了
sudo apt-get remove --purge postgresql-9.1
现在只需重新安装
sudo apt-get install postgresql-9.1
请注意包名称和版本号。 HTH。