我正在尝试在 Ubuntu 13.04 (Raring Ringtail) 上使用 postgresql 9.3 进行流式复制。我通过以下操作在主服务器和从服务器上安装了 postgresql:
apt-get 安装 postgresql
我相信我已经准备好复制的所有部分,除了,pg_archivecleanup不起作用。如果我尝试运行它,我会得到它
程序“pg_archivecleanup”当前未安装。您可以输入以下命令安装它:apt-get install postgres-xc-contrib
但是该软件包安装了 Postgres-XC 并破坏了我的 postgresql,这是我不想发生的。
我谷歌搜索到的最好的结果是此主题其中一个人在 9.2 中遇到了同样的问题,唯一的答复是“您可能还需要安装 -contrib 子包。”但是这样做:
apt-get 安装 postgresql-contrib
我得到:
postgresql-contrib 已经是最新版本。
那么,我到底如何在 Ubuntu 13.04(Raring Ringtail)上为 PostgreSQL 9.3 安装 pg_archivecleanup?
谢谢!
布拉德
答案1
postgresql-contrib
是一个元包,根据上下文可安装postgresql-contrib-9.3
。后者包含感兴趣的文件。
正常情况下如果你运行:
dpkg -L postgresql-contrib-9.3
你应该看到以下文件:
/usr/lib/postgresql/9.3/bin/pg_archivecleanup
它不在默认 PATH 中,但这是预料之中的。
反过来,命令dpkg -S pg_archivecleanup
应该输出postgresql-contrib-9.3
。
shell 的建议找不到命令处理程序从 postgres-xc 获取它在这种情况下毫无用处。据推测它会命中第一个包含命令名称的包。