In the previous tutorial, we learn How to upgrade PHP on LINUX, but in that tutorial, we install PHP5.3. Now, how to upgrade PHP5.3 to PHP5.4 on LINUX?
Step 1: Find out the version of Centos
You can use 2 methods:
[root@tutorialspots build]# cat /etc/issue CentOS release 5.3 (Final) Kernel \r on an \m [root@tutorialspots build]# cat /etc/redhat-release CentOS release 5.3 (Final)
In this example, we use CentOS 5.3.
Step 2: Add new Repository
CentOS/RHEL 7.x:
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
CentOS/RHEL 6.x:
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm
CentOS/RHEL 5.x:
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-5.noarch.rpm rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm
Sample output:
[root@tutorialspots build]# rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm Retrieving https://mirror.webtatic.com/yum/el6/latest.rpm error: skipping https://mirror.webtatic.com/yum/el6/latest.rpm - transfer failed - Unknown or unexpected error [root@tutorialspots build]# rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm Retrieving http://mirror.webtatic.com/yum/el5/latest.rpm warning: /var/tmp/rpm-xfer.WYtIbb: Header V4 DSA signature: NOKEY, key ID cf4c4f f9 Preparing... ########################################### [100%] 1:webtatic5-release ########################################### [100%]
Step 3: install yum-plugin-replace
[root@tutorialpots build]# yum install yum-plugin-replace Loaded plugins: fastestmirror, protectbase Loading mirror speeds from cached hostfile * epel: linux.mirrors.es.net * base: mirror.keystealth.org * updates: mirror.pac-12.org * webtatic-el5: us-east.repo.webtatic.com * extras: mirrors.easynews.com * addons: mirror.chpc.utah.edu webtatic-el5 | 2.5 kB 00:00 824c428e0a3abafaa54c85714ea04653bd6bd8ad-primary.sqlite. | 87 kB 00:00 0 packages excluded due to repository protections Setting up Install Process Parsing package install arguments Resolving Dependencies --> Running transaction check ---> Package yum-plugin-replace.noarch 0:0.2.7-1.ius.el5 set to be updated --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: yum-plugin-replace noarch 0.2.7-1.ius.el5 webtatic-el5 17 k Transaction Summary ================================================================================ Install 1 Package(s) Update 0 Package(s) Remove 0 Package(s) Total download size: 17 k Is this ok [y/N]: y Downloading Packages: yum-plugin-replace-0.2.7-1.ius.el5.noarch.rpm | 17 kB 00:00 warning: rpmts_HdrFromFdno: Header V4 DSA signature: NOKEY, key ID cf4c4ff9 Importing GPG key 0xCF4C4FF9 "Andy Thompson <andy@webtatic.com>" from /etc/pki/r pm-gpg/RPM-GPG-KEY-webtatic-andy Is this ok [y/N]: y Downloading Packages: yum-plugin-replace-0.2.7-1.ius.el5.noarch.rpm | 17 kB 00:00 warning: rpmts_HdrFromFdno: Header V4 DSA signature: NOKEY, key ID cf4c4ff9 Importing GPG key 0xCF4C4FF9 "Andy Thompson <andy@webtatic.com>" from /etc/pki/r pm-gpg/RPM-GPG-KEY-webtatic-andy Is this ok [y/N]: y Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : yum-plugin-replace [1/1] Installed: yum-plugin-replace.noarch 0:0.2.7-1.ius.el5 Complete!
Step 4:
Now we can replace PHP 5.3 TO PHP 5.4
yum replace php53 --replace-with=php54w
Sample output:
[root@tutorialpots build]# yum replace php53 --replace-with=php54w Loaded plugins: fastestmirror, protectbase, replace Loading mirror speeds from cached hostfile * epel: linux.mirrors.es.net * base: mirror.keystealth.org * updates: mirror.pac-12.org * webtatic-el5: us-east.repo.webtatic.com * extras: mirrors.easynews.com * addons: mirror.chpc.utah.edu 0 packages excluded due to repository protections Replacing packages takes time, please be patient... WARNING: Unable to resolve all providers: ['config(php53-common)', 'php53-common ', 'php53-cli', 'config(php53)', 'php53', 'config(php53-devel)', 'php53-devel', 'config(php53-pdo)', 'php53-pdo', 'config(php53-mysql)', 'php53-mysql'] This may be normal depending on the package. Continue? [y/N] y Resolving Dependencies --> Running transaction check ---> Package php54w-mysql.i386 0:5.4.45-2.w5 set to be updated ---> Package php53-mysql.i386 0:5.3.3-26.el5_11 set to be erased ---> Package php54w-pdo.i386 0:5.4.45-2.w5 set to be updated ---> Package php53-common.i386 0:5.3.3-26.el5_11 set to be erased ---> Package php53-pdo.i386 0:5.3.3-26.el5_11 set to be erased ---> Package php54w-devel.i386 0:5.4.45-2.w5 set to be updated --> Processing Dependency: pcre-devel for package: php54w-devel --> Processing Dependency: libedit.so.0 for package: php54w-devel ---> Package php53-devel.i386 0:5.3.3-26.el5_11 set to be erased ---> Package php54w-cli.i386 0:5.4.45-2.w5 set to be updated ---> Package php53.i386 0:5.3.3-26.el5_11 set to be erased ---> Package php53-cli.i386 0:5.3.3-26.el5_11 set to be erased ---> Package php54w.i386 0:5.4.45-2.w5 set to be updated ---> Package php54w-common.i386 0:5.4.45-2.w5 set to be updated --> Running transaction check ---> Package libedit.i386 0:2.11-2.20080712cvs.el5 set to be updated ---> Package pcre-devel.i386 0:8.02-1.el5_5.1 set to be updated --> Processing Dependency: pcre = 8.02-1.el5_5.1 for package: pcre-devel --> Running transaction check ---> Package pcre.i386 0:8.02-1.el5_5.1 set to be updated --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: php54w i386 5.4.45-2.w5 webtatic-el5 2.9 M php54w-cli i386 5.4.45-2.w5 webtatic-el5 2.9 M php54w-common i386 5.4.45-2.w5 webtatic-el5 1.3 M php54w-devel i386 5.4.45-2.w5 webtatic-el5 2.9 M php54w-mysql i386 5.4.45-2.w5 webtatic-el5 148 k php54w-pdo i386 5.4.45-2.w5 webtatic-el5 103 k Updating: pcre i386 8.02-1.el5_5.1 lxcenter-updates 460 k Removing: php53 i386 5.3.3-26.el5_11 installed 3.2 M php53-cli i386 5.3.3-26.el5_11 installed 6.1 M php53-common i386 5.3.3-26.el5_11 installed 2.9 M php53-devel i386 5.3.3-26.el5_11 installed 2.9 M php53-mysql i386 5.3.3-26.el5_11 installed 177 k php53-pdo i386 5.3.3-26.el5_11 installed 108 k Installing for dependencies: libedit i386 2.11-2.20080712cvs.el5 epel 79 k pcre-devel i386 8.02-1.el5_5.1 lxcenter-updates 395 k Transaction Summary ================================================================================ Install 8 Package(s) Update 1 Package(s) Remove 6 Package(s) Total download size: 11 M Is this ok [y/N]: y Downloading Packages: (1/9): libedit-2.11-2.20080712cvs.el5.i386.rpm | 79 kB 00:00 (2/9): php54w-pdo-5.4.45-2.w5.i386.rpm | 103 kB 00:00 (3/9): php54w-mysql-5.4.45-2.w5.i386.rpm | 148 kB 00:00 (4/9): pcre-devel-8.02-1.el5_5.1.i386.rpm | 395 kB 00:00 (5/9): pcre-8.02-1.el5_5.1.i386.rpm | 460 kB 00:00 (6/9): php54w-common-5.4.45-2.w5.i386.rpm | 1.3 MB 00:00 (7/9): php54w-cli-5.4.45-2.w5.i386.rpm | 2.9 MB 00:00 (8/9): php54w-devel-5.4.45-2.w5.i386.rpm | 2.9 MB 00:00 (9/9): php54w-5.4.45-2.w5.i386.rpm | 2.9 MB 00:00 -------------------------------------------------------------------------------- Total 1.8 MB/s | 11 MB 00:06 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Updating : pcre [ 1/16] Installing : pcre-devel [ 2/16] Installing : php54w-common [ 3/16] warning: /etc/php.ini created as /etc/php.ini.rpmnew Installing : libedit [ 4/16] Installing : php54w-cli [ 5/16] Installing : php54w-pdo [ 6/16] Installing : php54w [ 7/16] Installing : php54w-mysql [ 8/16] Installing : php54w-devel [ 9/16] Cleanup : pcre [10/16] Erasing : php53-devel [11/16] Erasing : php53-pdo [12/16] Erasing : php53-cli [13/16] Erasing : php53-mysql [14/16] Erasing : php53 [15/16] Erasing : php53-common [16/16] Removed: php53.i386 0:5.3.3-26.el5_11 php53-cli.i386 0:5.3.3-26.el5_11 php53-com mon.i386 0:5.3.3-26.el5_11 php53-devel.i386 0:5.3.3-26.el5_11 php53-mysql.i386 0 :5.3.3-26.el5_11 php53-pdo.i386 0:5.3.3-26.el5_11 Installed: php54w.i386 0:5.4.45-2.w5 php54w-cli.i386 0:5.4.45-2.w5 php54w-common .i386 0:5.4.45-2.w5 php54w-devel.i386 0:5.4.45-2.w5 php54w-mysql.i386 0:5.4.45-2 .w5 php54w-pdo.i386 0:5.4.45-2.w5 Dependency Installed: libedit.i386 0:2.11-2.20080712cvs.el5 pcre-devel.i386 0:8. 02-1.el5_5.1 Updated: pcre.i386 0:8.02-1.el5_5.1 Complete!
Note: if you see the WARNING:
Unable to resolve all providers: ['config(php53-common)', 'php53-common ', 'php53-cli', 'config(php53)', 'php53', 'config(php53-devel)', 'php53-devel', 'config(php53-pdo)', 'php53-pdo', 'config(php53-mysql)', 'php53-mysql']
you can continue by tying “y“
Step 5: service httpd restart
Done! Welcome to PHP 5.4