2

我已经在机器上安装了 OpenSUSE 12.1。我有 postgresql-contrib-8.3.11-0.1.i586.rpm、postgresql-devel-8.3.11-0.1.i586.rpm、postgresql-docs-8.3.11-0.1.i586.rpm、postgresql-libs-8.3 .11-0.1.i586.rpm,postgresql-server-8.3.11-0.1.i586.rpm..我想安装基于上述软件包的postgresql 8.3版本..但是当我使用这个命令安装时.它显示错误。

opnsu121:/ # rpm -Uvh postgresql-server-8.3.11-0.1.i586.rpm 错误:依赖失败:postgresql = 8.3 is needed by postgresql-server-8.3.11-0.1.i586

即使我找不到 postgresql 8.3 基本版本,因为我认为上面的版本是更新。我已经通过了 download.openSUSE.orf,ftp.openSUSE.org .. http://download.opensuse.org/update/ 11.0/rpm/i586/ ..但找不到我需要的东西..所以请帮忙,

4

2 回答 2

4

如果可能,请使用YaSTSuSE 或任何软件包管理器来安装当前版本的 PostgreSQL。从存储库看起来是 9.1.1。

如果您特别需要 PostgreSQL 8.3,我建议您使用EnterpriseDB 中独立于发行版的安装程序。这在 SuSE 12.2 上应该可以正常工作。如果您的组织有特别严格和不安全的版本策略,迫使您使用具有已知错误的旧版本,您可以在此处获得 32 位 Linux 的 8.3.14 和 32 位 Linux8.3.11此处

如果您在使用 PostgreSQL 的经过良好测试和已知可工作的 EnterpriseDB 二进制安装程序版本时遇到问题,您的另一个选择(也是一个不错的选择)是从源代码安装。从FTP 站点下载PostgreSQL 8.3.18 源代码,然后:

sudo mkdir -p /opt/postgresql93
sudo chown `id -un` /opt/postgresql93
./configure --prefix=/opt/postgresql93
make
make install

之后,您可以根据PostgreSQL 文档/opt/postgresql93/bin/initdb使用(参见initdb 手册)创建数据库并/opt/postgresql93/bin/pg_ctl(参见pg_ctl 手册)启动/停止它。

不要试图强制将旧版本 SuSE 中的软件包安装到新版本上。它可能会导致依赖关系树的增加并以痛苦告终。

如果可能的话,试着让你的公司相信他们要求 PostgreSQL 的特定次要版本(例如 8.4.14 而不仅仅是“8.4.x”)的政策是不安全的,而且会适得其反。他们强迫您进行肮脏的黑客攻击或手动编译独特的自定义安装,以便避免使用包含额外错误修复的经过良好测试的构建。在从 8.3 升级到 8.4/9.0/9.1/etc 之前要求批准是有意义的,因为存在需要仔细测试的功能和向后兼容性更改,但在从 8.3.14 升级到 8.3.18 之前要求批准会适得其反。PostgreSQL的小版本升级非常保守;您应该及时了解最新的次要版本。

于 2012-05-21T07:25:27.467 回答
1

万岁...我得到了答案..我得到了下面的包:postgresql-contrib-8.3.11-0.1.i586.rpm, postgresql-devel-8.3.11-0.1.i586.rpm,postgresql-docs-8.3 .11-0.1.i586.rpm,postgresql-libs-8.3.11-0.1.i586.rpm,postgresql-server-8.3.11-0.1.i586.rpm 来自以下链接:http: //download.opensuse.org /update/12.1/i586/

我一直在努力获得的另一个包裹是:

postgresql-8.3.11-0.1.i586.rpm 带有以下链接:

http://rpm.pbone.net/index.php3/stat/4/idpl/17194424/dir/opensuse_11.x/com/postgresql-8.3.11-0.1.i586.rpm.html

使用我安装的所有上述软件包.. rpm -ivh packagename 如果存在依赖关系,则rpm -ivh --nodeps packagename

太好了。。完成了。。

于 2012-05-22T08:13:51.843 回答