CentOS 5.3 通过yum升级php的方法
方法一(PHP5.3):
CentOS5.3的php版本默认为5.1.6,然后在5.2.9版本之前的的php都存在一个漏洞,但是目前网上很多地方都无法使用yum update php*升级到5.2.9,比较常见的是升级到5.2.6版本的,经过搜索国外资料,现在终于找到一种升级CentOS的php到5.2.9的方法。
注意,此方法只能在官方的php版本上升级,如果你使用网上的升级到5.2.6版本的升级方法已经升级了,将无法使用本方法升级php。
运行下面命令:
wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/5/remi/i386/remi-release-5-7.el5.remi.noarch.rpm
rpm -Uvh remi-release-5*.rpm epel-release-5*.rpm
然后编辑/etc/yum.repos.d/remi.repo
#vi /etc/yum.repos.d/remi.repo
在这个文件的最后增加一行:
priority=1
保存退出。
/etc/yum.repos.d/epel.repo和/etc/yum.repos.d/epel-testing.repo这两个文件也按照上面的方法进行编辑!
使用下面的命令进行升级,但是经过测试,如果单独升级php将提示失败,只有连同mysql一起升级才可以,所以我们必须执行以下命令才能升级php到5.2.9版本:
yum –-enablerepo=remi update php* mysql*
注意:此方法将 php 升级 到 5.3了。
方法二(PHP5.2):
或者 去 http://oss.oracle.com/
下再 php5.2的rpm包
方法三:
#vi /etc/yum.repos.d/utterramblings.repo
输入
[utterramblings]
name=Jason's Utter Ramblings Repo
baseurl=http://www.test.com/media/EL$releasever/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://www.test.com/media/RPM-GPG-KEY-jlitka
最后
yum update php -y
现在我用的就是通过 这种方式装的,升级之后版本
php-5.2.11
httpd-2.2.14
Centos5.4(webmin)中Yum升级mysql5.1和php5.2(禁止php5.3) centos5.3,centos5.4安装webmin默认的是 mysql 5.0,php5.1 我需要升级到
mysql5.1和php5.2(禁止php5.3),怎么办?
给yum安装rpmforge:
yum list mysql php 发现都是最新版本了,看来标准的yum源没有更新
wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm wget http://rpms.famillecollet.com/el5.i386/remi-release-5-7.el5.remi.noarch.rpm rpm -Uvh remi-release-5-7.el5.remi.noarch.rpm epel-release-5-4.noarch.rpm yum --enablerepo=remi list mysql
发现可以升级到 mysql 5.1.44-1.el5.remi
yum --enablerepo=remi update mysql
发现升级时系统会默认自动把php也一并升级到 5.3,而zend optimizer 目前不支持 Php5.3,所以这里需要禁止升级php5.3
vi /etc/yum.conf
最后一行增加
exclude=php*5.3*
然后再yum --enablerepo=remi update mysql,就看不到php的升级了.
搞定:
[root@www.scutephp.com backup]# php -v 还是旧的5.1.6
PHP 5.1.6 (cli) (built: Jan 13 2010 17:13:05)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies
with Zend Extension Manager v1.2.2, Copyright (c) 2003-2007, by Zend Technologies
with Zend Optimizer v3.3.3, Copyright (c) 1998-2007, by Zend Technologies
[root@www]# mysql -V 升级到5.1.44了
mysql Ver 14.14 Distrib 5.1.44, for redhat-linux-gnu (i686) using readline 5.1
升级mysql 5.1.41-1之后,请执行以下操作:
(1)将原有的/etc/my.cnf备份,将/etc/my.cnf.rpmnew改名为my.cnf
(2)升级table
mysql_upgrade -p
(3)自动修复table
mysqlcheck --all-databases --check-upgrade --auto-repair -p
找到一个yum源,有php5.2,方法如下:
rpm --import http://repo.webtatic.com/yum/RPM-GPG-KEY-webtatic-andy wget -P /etc/yum.repos.d/ http://repo.webtatic.com/yum/webtatic.repo yum --enablerepo=webtatic list php
发现有php5.2 和 php5.3可以升级,
我们禁止升级php5.3
vi /etc/yum.conf
最后一行增加
exclude=php*5.3*
或者:
yum --enablerepo=webtatic --exclude=php*5.3* list php yum --enablerepo=webtatic --exclude=php*5.3* update -y php
[root@www]# php -v 升级到5.2.12了,收工!
PHP 5.2.12 (cli) (built: Dec 17 2009 19:40:56)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
with Zend Extension Manager v1.2.2, Copyright (c) 2003-2007, by Zend Technologies
with Zend Optimizer v3.3.3, Copyright (c) 1998-2007, by Zend Technologies
yum-allowdowngrade 可以降级的插件:
allow downgrade for yum:
yum install yum-allowdowngrade
Add a line to yum.conf:
showdupesfromrepos=1
After that list all php packages:
yum list php
If php 5.2.8 is available, remove new one:
yum remove php
and install an old one:
yum --allow-downgrade install php-5.2.8
推荐阅读