我在Unix上。我安装了postgresql-9.3
当我想使用pg_ctl
或postgres
启动服务器时,终端会给我:
The program 'postgres' is currently not installed. You can install it by typing: sudo apt-get install postgres-xc
如果没有这个postgres-xc,我不能启动服务器吗?
答案 0 :(得分:2)
这必须是您先前安装的postgres-xc
包的残余。
由于您刚刚安装了postgresql-9.3
并且似乎没有使用任何数据库,但我建议完全清除所有postgres包。
sudo apt-get purge postgresql-9.2
sudo apt-get purge postgresql-xc
...
直到没有任何东西:
dpkg -l | grep postgres
然后从头开始。您的pg_ctl
实例似乎属于包postgres-xc
。在您卸载软件包后,这应该已经消失。找出one of these commands:
dpkg -S pg_ctl
dlocate pg_ctl
apt-file search pg_ctl
pg_ctlcluster
由包postgresql-common
提供
pg_ctl
包由postgresql-9.3
提供。
答案 1 :(得分:0)
你可能会遗漏一些东西。
尝试:
sudo apt-get install postgresql-client
和
sudo apt-get install postgresql postgresql-contrib
关于安装xc的消息是一个哑弹,它可能暗示它基于它在xc存储库中扫描的内容。
以下是对此问题及其解决方案的一个很好的参考: https://dba.stackexchange.com/questions/72580/missing-the-pg-ctl-package-in-postgres-9-3-installation
答案 2 :(得分:0)
由于正常安装postgres不会将 postgres 二进制文件放在路径中的原因。
将正确的目录添加到路径可以解决问题(暂时)。
PATH=/usr/lib/postgresql/9.3/bin:$PATH
为了让它在我的Ubuntu机器上永久保存,我将该行添加到 / etc / environment ,这使得它适用于所有用户。
设置PATH的正确方法因系统而异,有关详细信息,请参阅:
答案 3 :(得分:0)
您必须安装 postgresql-client :
sudo install postgresql-client
尝试将此命令输入控制台:
sudo -u postgres psql