use*_*720 2 postgresql replication linux pgpool
根据此处的文档,我想用 PostgreSQL 数据库创建一个 pgpool II。当我尝试安装时,遇到此错误:
configure: error: libpq is not installed or libpq is old
Run Code Online (Sandbox Code Playgroud)
搜索 pgpool 网站,他们提到./configure
使用以下命令运行:
--with-pgsql
Run Code Online (Sandbox Code Playgroud)
或者
--with-pgsql-includedir
Run Code Online (Sandbox Code Playgroud)
或者
--with-pgsql-libdir
Run Code Online (Sandbox Code Playgroud)
但我仍然面临同样的问题。谁能指导我从这里可以做什么?
我正在运行从 CentOS 5 上的 yum 包安装的 PostgreSQL 9.2。
与其编译 PgPool,为什么不直接从包管理中安装它呢?
yum install postgresql-pgpool-II
Run Code Online (Sandbox Code Playgroud)
我不使用 CentOS,但它是 Fedora 17 中的包名,两者通常是一致的。
由于您在 CentOS 5 上使用通过 Yum 安装的 PostgreSQL 9.2,因此您显然使用的是 PostgreSQL 的第 3 方包装,因此您很可能正在使用yum.postgresql.org存储库。此存储库声称包含 PgPool-II,因此请尝试:
yum search pgpool
Run Code Online (Sandbox Code Playgroud)
看看你是否找到了任何包裹。通过以下方式获取有关它们的详细信息:
yum info packagename
Run Code Online (Sandbox Code Playgroud)
否则,为了编译 PgPool,你需要安装 PostgreSQL 的开发包:
yum install postgresql-devel
Run Code Online (Sandbox Code Playgroud)
如果仅此一项还不能解决问题,请尝试确保pg_config
在PATH
:
export PATH=$PATH:/usr/pgsql-9.2/bin
./configure
Run Code Online (Sandbox Code Playgroud)
你不应该需要指定一个libdir
或includedir
明确,作为the're中/usr/include
和/usr/lib
(或/usr/lib64
)在CentOS和那些是默认的搜索位置configure
和gcc
。很可能您只是没有安装开发头文件。