这让我发疯了
首先,我从石器时代就开始使用的托管提供商,正在拖着他们的脚步更新到Centos 6,从我所读到的,我可以看出原因。
我没有等待下一个冰河时代的到来,而是阅读了仅在Centos 5上更新postgresql 9.2的说明,这是我运行包安装所需要的全部内容,它告诉我我的PostgreSQL太老了- PostgreSQL 8.1.23
更新和启动后,以下是返回的消息:
[root@vps data]# /etc/init.d/postgresql-9.2 start
/etc/rc.d/init.d/functions: fork: Cannot allocate memory
/etc/profile.d/lang.sh: line 53: /sbin/consoletype: Argument list too long
Starting postgresql-9.2 service: [ OK ]开始了,很好-对吧?
不,
[root@vps data]# psql --version
psql (PostgreSQL) 8.1.23
contains support for command-line editing如果9.2开始了,为什么还要说8.1.23呢?
也许我只是需要重新启动
reboot -issh回到psql --版本仍然显示PostgreSQL 8.1.23-WTF?
我运行/etc/init.d/postgresql-9.2开始-它开始-好,酷
bundle install
Make sure that `gem install pg -v '0.17.1'` succeeds before bundling
gem install pg -v '0.17.1'我仍然收到错误:
checking for PQconnectionUsedPassword()... no
Your PostgreSQL is too old. Either install an older version of this gem or upgrade your database.
*** extconf.rb failed ***因此,我的最终问题是:
如果postgresql 9.2启动了,为什么它说我运行8.1.23?
我必须要rm -rf整个/usr/bin/psql并重新开始吗?
发布于 2014-03-25 09:34:34
PostgreSQL开发小组在CentOS 5上有PG9.3软件包。
见yum.postgresql.org。
但是,安装PG9.3不会删除8.1。它还会出现在你的PATH上。它也会继续运行。
如果您想使用9.3 psql和libpq,您需要修改您的PATH和LD_LIBRARY_PATH以选择PostgreSQL 9.3安装。然后根据新的Pg重新构建libpq gem。
类似于:
export PATH="/usr/pgsql-9.3/bin:$PATH"
export LD_LIBRARY_PATH="/usr/pgsql-9.3/lib/:$LD_LIBRARY_PATH"
gem uninstall pg
gem install pg如果您希望这在全球范围内生效,您可以修改/etc/ld.so.conf以在默认情况下设置新路径,并修改/etc/environment以适当地设置PATH。
否则,将前两行添加到~/.bash_profile中。
另外,这些情况令人相当担忧:
/etc/rc.d/init.d/functions: fork: Cannot allocate memory
/etc/profile.d/lang.sh: line 53: /sbin/consoletype: Argument list too long就像他们说的那样,系统上有些东西不匹配/坏了。不一定与PostgreSQL相关。您是否强制安装了任何RPM或使用了任何第三方回购?
https://stackoverflow.com/questions/22626366
复制相似问题