问题安装和配置PostgreSQL
我是这里的新手和服务器管理员。 几天前我在Hbuzner和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
这对我的耐心和信心造成了影响。 请帮我解决这个问题。
回答我自己的问题。 这有点烦人,任何StackExchange网站上的第一个问题对我来说都不顺利。
我已经这样做了,但这次不知怎的。 做过这个:
- sudo apt-get update && sudo apt-get upgrade
- sudo apt-get purge postgresql *
- sudo apt-get -f install
- sudo apt-get install postgresql
奇迹般有效。
注意:在purge命令中添加*将清除以postgresql开头的所有包
我也遇到了Hetzner这个问题而且非常讨厌。 以下是我如何解决它提示:看一些pg包脚本
sudo apt-get purge postgresql*
#ending *很重要
sudo apt-get install postgresql
我怀疑Hetzner的11.04图像是错误的还是Ubuntu的.deb(不太可能)。
我没有在与Natty关联的启动板上看到此错误。 同样的问题已经被提出作为Hardy的启动板上的一个错误并得到了修复。 因此遵循该逻辑我会期望它是一个错误,并且最好在启动板上提交错误。
进一步研究它,我发现了2个有趣(但很旧)的主题,显示了完全相同的错误,似乎值得研究:
2006年的这个话题正在谈论完全相同的问题并声称
sudo /etc/init.d/postgresql-8.1 stop
sudo /etc/init.d/postgresql-8.1 start
psql template1
作品。
在ubuntuforums上有一个关于同一错误的2008年的主题并且状态为“已解决”。 请查看该主题中的许多建议。
psql是cli客户端,它不启动PostgreSQL服务器。 要启动服务器,您应该使用:
/etc/init.d/postgresql start
然后你可以使用psql连接到它。
要让PostgreSQL在启动时启动,您应该执行以下操作:
update-rc.d postgresql enable
你也可以看看这个:
http://www.cyberciti.biz/tips/how-to-controlling-access-to-linux-services.html
运行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
现在一切都很好。