安装和配置 PostgreSQL 时出现的问题

安装和配置 PostgreSQL 时出现的问题

我是这里的新手,也是服务器管理的新手。几天前,我注册了一个服务器赫茨纳使用 Ubuntu 11.04。

我打算使用 PostgreSQL,在使用 apt-get 安装失败后,我从源代码安装了它。安装本身并没有失败,但是 PostgreSQl 服务不会自动启动,或者当我尝试手动启动它时也不会启动。当我尝试使用它做任何事情时,它都会失败并显示以下错误消息:

manager@Ubuntu-1104-natty-32-minimal:~$ sudo su postgres -c psql template1
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"?

这是我使用 apt-get 安装 PostgreSQL 并从源代码重新安装时遇到的错误。以下是我从源代码安装时得到的输出。这证实了 PostgreSQL 确实已安装。

make -C config install
make[1]: Entering directory `/home/manager/postgresql-9.0.4/config'
/bin/mkdir -p '/usr/local/pgsql/lib/pgxs/config'
/bin/sh ../config/install-sh -c -m 755 ./install-sh '/usr/local/pgsql/lib/pgxs/config/install-sh'
make[1]: Leaving directory `/home/manager/postgresql-9.0.4/config'
PostgreSQL installation complete.

但是,服务不是自动启动的吗?这里没有:

manager@Ubuntu-1104-natty-32-minimal:~$ ps auxw | grep post
manager   6734  0.0  0.0   4156   868 pts/0    S+   14:10   0:00 grep --color=auto post

这让我的耐心和信心大打折扣。请帮我解决这个问题。

答案1

回答我自己的问题。这有点烦人,任何 StackExchange 网站上的第一个问题对我来说都不太好。

我已经这样做了,但这次不知怎么就成功了。这样做了:

  1. sudo apt-get 更新 && sudo apt-get 升级
  2. sudo apt-get purge postgresql*
  3. sudo apt-get -f 安装
  4. sudo apt-get 安装 postgresql

奇迹般有效。

注意:在 purge 命令中添加 * 将清除所有以 postgresql 开头的包

答案2

我在使用 Hetzner 时也遇到了这个问题,非常烦人。下面是我解决问题的方法提示:查看了一些 pg 包脚本

sudo apt-get purge postgresql*# 结尾 * 很重要

sudo apt-get install postgresql

我怀疑 Hetzner 的 11.04 图像有问题,或者是 Ubuntu 的 .deb 有问题(但不太可能)。

答案3

我在 Natty 启动板上没有看到此错误。同样的问题已作为启动板上有错误Hardy 的,并已修复。所以按照这个逻辑,我认为这是一个错误,在启动板上提交错误可能是最佳做法。

进一步研究后,我发现了两个有趣(但很旧)的主题,显示了完全相同的错误,似乎值得研究:

这个话题2006 年的一篇文章讨论了同样的问题,并声称

sudo /etc/init.d/postgresql-8.1 stop

sudo /etc/init.d/postgresql-8.1 start

psql template1

作品。

ubuntu论坛2008 年有一个关于相同错误且状态为“已解决”的主题。请查看该主题中的许多建议。

答案4

运行 Ubuntu 14.04 时,我遇到了类似的问题,无法使用上述解决方案使其正常工作。最后我找到了答案这里

a)我aptitude search postgresql|grep ^i在终端中运行此命令并得到以下结果:

i   postgresql                      - object-relational SQL database (supported 
i A postgresql-9.3                  - object-relational SQL database, version 9.
i A postgresql-client-9.3           - front-end programs for PostgreSQL 9.3     
i A postgresql-client-common        - manager for multiple PostgreSQL client ver
i A postgresql-common               - PostgreSQL database-cluster manager

b) 然后:sudo aptitude purge postgresql postgresql-9.3 postgresql-common

c)最后:sudo aptitude install postgresql

现在一切正常。

相关内容