I need to downgrade PHP 5.3 to 5.2 and I'm on a CentOS 5.5 x86_64 machine running Apache 2.2.3 & MySQL 5.1.54. I've been having some problems and now am just plain lost... Not sure exactly what to include in terms of steps / whatnot, so I'll just try to break down what I did that got me to my breaking point...
Here are the steps I've taken thus far:
(1) I tried uninstalling PHP 5.3 with:
rpm -e --nodeps php-devel php php-cli php-common php-mcrypt php-mysql
php-pdo php-ldap php-mbstring php-xml php-xmlrpc php-odbc php-imap
php-snmp php-gd
//Yielded:
warning: /etc/php.ini saved as /etc/php.ini.rpmsave
(2) Then, I tried installing php:
yum install php-devel php php-cli php-common php-mcrypt php-mysql php-pdo php-ldap php-mbstring php-xml php-xmlrpc php-odbc php-imap php-snmp php-gd
But, stupidly, I realized (later on) that I didn't specify the repo or the php version. Fortunately (?), nothing was installed because it yielded this:
Transaction Check Error:
package libmcrypt-2.5.8-4.el5.centos.x86_64 (which is newer than libmcrypt-2.5.7-5.el5.i386) is already installed
(3) Although, I didn't notice that at first, so I restarted apache, and ran: yum upgrade
Which ran through everything fine.
(4) Edited /etc/my.cnf to put skip-bdb in there and start mysqld
(5) Ran: mysql_upgrade -uadmin -p
cat /etc/psa/.psa.shadow`
(6) After trying to google for a solution, I came across an article that said I needed yum-allowdowngrade, so, I ran this: yum install yum-allowdowngrade
(7) To try to make sure I didn't have php installed, I ran: yum remove php
which yielded:
Loaded plugins: allowdowngrade, fastestmirror
Setting up Remove Process
No Match for argument: php
Loading mirror speeds from cached hostfile
* atomic: www6.atomicorp.com
* base: mirror.rackspace.com
* epel: mirror.cogentco.com
* extras: mirror.ash.fastserv.com
* updates: mirror.ash.fastserv.com
atomic | 1.9 kB 00:00
base | 2.1 kB 00:00
epel | 3.7 kB 00:00
extras | 2.1 kB 00:00
rusia-repo | 951 B 00:00
updates | 1.9 kB 00:00
Package(s) php available, but not installed.
No Packages marked for removal
(8) Then, I ran:
yum --allow-downgrade --enablerepo=rusia-repo install php-devel-5.2.17-1.el5.x86_64 php-5.2.17-1.el5.x86_64 php-cli-5.2.17-1.el5.x86_64 php-common-5.2.17-1.el5.x86_64 php-mcrypt-5.2.17-1.el5.x86_64 php-mysql-5.2.17-1.el5.x86_64 php-pdo-5.2.17-1.el5.x86_64 php-ldap-5.2.17-1.el5.x86_64 php-mbstring-5.2.17-1.el5.x86_64 php-xml-5.2.17-1.el5.x86_64 php-xmlrpc-5.2.17-1.el5.x86_64 php-odbc-5.2.17-1.el5.x86_64 php-imap-5.2.17-1.el5.x86_64 php-snmp-5.2.17-1.el5.x86_64 php-gd-5.2.17-1.el5.x86_64
which yielded:
Loaded plugins: allowdowngrade, fastestmirror
Loading mirror speeds from cached hostfile
* atomic: www6.atomicorp.com
* base: mirror.rackspace.com
* epel: mirror.cogentco.com
* extras: mirror.ash.fastserv.com
* updates: mirror.ash.fastserv.com
atomic | 1.9 kB 00:00
base | 2.1 kB 00:00
epel | 3.7 kB 00:00
extras | 2.1 kB 00:00
rusia-repo | 951 B 00:00
updates | 1.9 kB 00:00
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php.x86_64 0:5.2.17-1.el5 set to be updated
--> Processing Dependency: php-common = 5.2.17-1.el5 for package: php
--> Processing Dependency: php-cli = 5.2.17-1.el5 for package: php
--> Finished Dependency Resolution
php-5.2.17-1.el5.x86_64 from rusia-repo has depsolving problems
--> Missing Dependency: php-common = 5.2.17-1.el5 is needed by package php-5.2.17-1.el5.x86_64 (rusia-repo)
php-5.2.17-1.el5.x86_64 from rusia-repo has depsolving problems
--> Missing Dependency: php-cli = 5.2.17-1.el5 is needed by package php-5.2.17-1.el5.x86_64 (rusia-repo)
Error: Missing Dependency: php-common = 5.2.17-1.el5 is needed by package php-5.2.17-1.el5.x86_64 (rusia-repo)
Error: Missing Dependency: php-cli = 5.2.17-1.el5 is needed by package php-5.2.17-1.el5.x86_64 (rusia-repo)
You could try using --skip-broken to work around the problem
You could try running: package-cleanup --problems
package-cleanup --dupes
rpm -Va --nofiles --nodigest
I kept getting a series of these errors, so decided to just run yum update, update back to php 5.3 and see if I could get that working until I figured out how to downgrade correctly...
So, I ran yum update and got:
yum update
Loaded plugins: allowdowngrade, fastestmirror
Loading mirror speeds from cached hostfile
* atomic: www6.atomicorp.com
* base: mirror.rackspace.com
* epel: mirror.symnds.com
* extras: mirror.symnds.com
* updates: mirror.symnds.com
Setting up Update Process
No Packages marked for Update
Then, I ran:
yum install php-devel php php-cli php-common php-mcrypt php-mysql php-pdo php-ldap php-mbstring php-xml php-xmlrpc php-odbc php-imap php-snmp php-gd
But that yielded:
Transaction Check Error:
package libmcrypt-2.5.8-4.el5.centos.x86_64 (which is newer than libmcrypt-2.5.7-5.el5.i386) is already installed
file /usr/bin/phar.phar from install of php-cli-5.3.6-3.el5.art.i386 conflicts with file from package php-cli-5.3.6-3.el5.art.x86_64
file /usr/bin/phpize from install of php-cli-5.3.6-3.el5.art.i386 conflicts with file from package php-cli-5.3.6-3.el5.art.x86_64
I tried service httpd restart and got:
Stopping httpd: [FAILED]
Starting httpd: httpd: Syntax error on line 210 of /etc/httpd/conf/httpd.conf: Syntax error on line 6 of /etc/httpd/conf.d/php.conf: Cannot load /etc/httpd/modules/libphp5.so into server: /etc/httpd/modules/libphp5.so: cannot open shared object file: No such file or directory
So, now, I'm totally confused and really, really need some help...