• If you are still using CentOS 7.9, it's time to convert to Alma 8 with the free centos2alma tool by Plesk or Plesk Migrator. Please let us know your experiences or concerns in this thread:
    CentOS2Alma discussion

Upgrading PHP to 5.3.6 or higher and libxml2

MiguelG

Basic Pleskian
Hi,

I'm running Plesk Panel 10.4.4 on Centos 5.7 system. Right now i have PHP 5.3.3 that is shipped with Plesk but this version is a bit outdated and it have some bugs, especially related with libxml2. My libxml2 shipped with Centos 5.7 is very old (2.6.26) and i need to update it also. So can anyone suggest any way to upgrade my PHP to a higher version (5.3.8 or may be 5.3.10) and also libxml2 on Centos? Doing this can bring any problem with Plesk 10.4.4?

many thanks in advance,
 
Update by using Yum

Try this channel to update your php and other packages:

$ wget -q -O - http://www.atomicorp.com/installers/atomic | sh


Than run:
$ yum clean all

Check your updates:
$ yum check-update


Update php:
$ yum update php

Update libxml2:
$ yum update libxml2


Maybe would it be a good idea to update your packages automatic by installing a crontab:
$ crontab -e

Insert:
0 2 * * * yum -y clean all >/dev/null 2>&1
5 2 * * * yum -y update --disablerepo=atomic >/dev/null 2>&1
10 2 * * 1 yum -y update php >/dev/null 2>&1


Plesk:

Also could you updating weekly your Plesk installation by a cronjob.
In this case have I selected Saturday, because Thursday or Friday are there updated packages by Parallels.
30 2 * * 5 /usr/local/psa/admin/sbin/autoinstaller/autoinstaller --select-product-id plesk --select-release-latest --override-os-arch i386 --upgrade-installed-components

Insert at the end >/dev/null 2>&1 if you don't want to receive a update by email.
Change --select-release-latest to --select-release-current if you want to keep your version. Otherwise the update goes to the latest release.
Change --override-os-arch i386 to --override-os-arch x86_64 if you have a 64-bit system. Better could you remove this command if you not sure.

Close new rules by ESC, than : and press x and hit Enter.
Now you have a daily update at your server and a weekly update for PHP and Plesk.

Sometime you receiving cronjob messages by your web-server, you can correct this by editing the cronjob and insert # before the cronjob or remove whole command to comment out.


MySQL:

Update MySQL periodic by a manual update at your ssh console:
$ yum update mysql

Complete the database:
$ mysql_upgrade -h localhost -uadmin -p`cat /etc/psa/.psa.shadow`

 
Last edited by a moderator:
Thanks EdwardDekker! But i'm having troubles when using the atomic repo (i've already added it). When i enable the atomic repo the yum update command shows this:

mysql-5.1.52-1.el5.art.x86_64 from installed has depsolving problems
--> Missing Dependency: mysql-libs = 5.1.52-1.el5.art is needed by package mysql-5.1.52-1.el5.art.x86_64 (installed)
php-sqlite-5.3.10-5.el5.art.i386 from atomic has depsolving problems
--> Missing Dependency: php-common = 5.3.10-5.el5.art is needed by package php-sqlite-5.3.10-5.el5.art.i386 (atomic)
mysql-5.1.52-1.el5.art.x86_64 from installed has depsolving problems
--> Missing Dependency: mysql-libs = 5.1.52-1.el5.art is needed by package mysql-5.1.52-1.el5.art.x86_64 (installed)
mysql-devel-5.1.52-1.el5.art.i386 from installed has depsolving problems
--> Missing Dependency: libndbclient.so.3 is needed by package mysql-devel-5.1.52-1.el5.art.i386 (installed)
mysql-devel-5.1.52-1.el5.art.i386 from installed has depsolving problems
--> Missing Dependency: libmysqlclient.so.16 is needed by package mysql-devel-5.1.52-1.el5.art.i386 (installed)
mysql-5.1.52-1.el5.art.i386 from installed has depsolving problems
--> Missing Dependency: libmysqlclient_r.so.16 is needed by package mysql-5.1.52-1.el5.art.i386 (installed)
mysql-5.1.52-1.el5.art.i386 from installed has depsolving problems
--> Missing Dependency: mysql-libs = 5.1.52-1.el5.art is needed by package mysql-5.1.52-1.el5.art.i386 (installed)
mysql-5.1.52-1.el5.art.i386 from installed has depsolving problems
--> Missing Dependency: libmysqlclient_r.so.16(libmysqlclient_16) is needed by package mysql-5.1.52-1.el5.art.i386 (installed)
mysql-devel-5.1.52-1.el5.art.x86_64 from installed has depsolving problems
--> Missing Dependency: libndbclient.so.3()(64bit) is needed by package mysql-devel-5.1.52-1.el5.art.x86_64 (installed)
mysql-5.1.52-1.el5.art.i386 from installed has depsolving problems
--> Missing Dependency: mysql-libs = 5.1.52-1.el5.art is needed by package mysql-5.1.52-1.el5.art.i386 (installed)
mysql-5.1.52-1.el5.art.i386 from installed has depsolving problems
--> Missing Dependency: libmysqlclient.so.16 is needed by package mysql-5.1.52-1.el5.art.i386 (installed)
php53-common-5.3.3-1.el5_7.6.x86_64 from installed has depsolving problems
--> php53-common conflicts with php-common
mysql-5.1.52-1.el5.art.i386 from installed has depsolving problems
--> Missing Dependency: libmysqlclient.so.16(libmysqlclient_16) is needed by package mysql-5.1.52-1.el5.art.i386 (installed)
mysql-devel-5.1.52-1.el5.art.i386 from installed has depsolving problems
--> Missing Dependency: libmysqlclient_r.so.16 is needed by package mysql-devel-5.1.52-1.el5.art.i386 (installed)
Error: php53-common conflicts with php-common
Error: Missing Dependency: mysql-libs = 5.1.52-1.el5.art is needed by package mysql-5.1.52-1.el5.art.i386 (installed)
Error: Missing Dependency: libmysqlclient_r.so.16(libmysqlclient_16) is needed by package mysql-5.1.52-1.el5.art.i386 (installed)
Error: Missing Dependency: libmysqlclient.so.16 is needed by package mysql-5.1.52-1.el5.art.i386 (installed)
Error: Missing Dependency: libndbclient.so.3()(64bit) is needed by package mysql-devel-5.1.52-1.el5.art.x86_64 (installed)
Error: Missing Dependency: mysql-libs = 5.1.52-1.el5.art is needed by package mysql-5.1.52-1.el5.art.x86_64 (installed)
Error: Missing Dependency: libmysqlclient_r.so.16 is needed by package mysql-devel-5.1.52-1.el5.art.i386 (installed)
Error: Missing Dependency: libndbclient.so.3 is needed by package mysql-devel-5.1.52-1.el5.art.i386 (installed)
Error: Missing Dependency: libmysqlclient.so.16(libmysqlclient_16) is needed by package mysql-5.1.52-1.el5.art.i386 (installed)
Error: Missing Dependency: libmysqlclient_r.so.16 is needed by package mysql-5.1.52-1.el5.art.i386 (installed)
Error: Missing Dependency: libmysqlclient.so.16 is needed by package mysql-devel-5.1.52-1.el5.art.i386 (installed)
Error: Missing Dependency: php-common = 5.3.10-5.el5.art is needed by package php-sqlite-5.3.10-5.el5.art.i386 (atomic)
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

and i can't continue installing anything else... how can i solve this?

About the cron jobs to auto update packages, i don't like to use them cause it's a production server and this could cause problems with untested php versions, etc.

kind regards!
 
Last edited:
Exclude Arch @ Yum

You have to change your packages by Plesk to PHP and not PHP53. Than should it more compatible with other updates.
And do I'll see the arch of your CentOS installation have to be corrected into i386 or x86_64 for a correct update at yum.

Exclude the arch by /etc/yum.conf:
exclude=*.x86_64
 
Last edited by a moderator:
Hmmm... i'm not sure to understand why do i need to exclude x86_64 packages... Is this better than using exactarch=1 into the yum.conf file? Or even better, using multilib_policy=best

... and, should i reinstall mysql using x86_64 packages to avoid this conflicts? There is no risk to break things on Plesk panel doing yum remove mysql and then yum install mysql-server mysql (with atomic repo enabled) or may be that rpm -e --nodeps mysql mysql-server is even better and more secure?
 
Last edited:
Ok, now i'm trying to downgrade php53 to php using the parallels updater from my Plesk 10.4.4 panel. IT DOESN'T WORK. I've changed from PHP53 to PHP and it gives this error:

Can't find solution for 'obsolete_mode_solution for php53-cli' of dummy_masterpackage_for_dependency-1.2.3.

at the end of the log file. So, there is a bug in Parallels repos and/or updater scripts. I suppose that i must wait until they make a fix for this issue, isn't it?

I hope that the parallels support staff could read this and provides a solution.

regards,
 
1. Try to notice all of the packages of php53 by:
$ yum list php53*

2. Stop all httpd services
$ Service httpd stop

3. Delete these packages:
$ rpm -rv --nodeps php53 php53-common php53-mysql
(and type more packages if you have installed other php53-extentions)

4. Reinstall these packages by yum again and all other packages that you'll have deleted.
$ yum install php php-common php-mysql

5 After installation check your php.ini file at:
$ /etc/php.ini

6 Restart Apache:
$ service httpd start

7 Check PHP settings:
$ php -i

8. Correct problems if you have a error into PHP
 
And there is any way to upgrade libxml2 to 2.7.8 version keeping my current php53 shipped with plesk??
 
I need to bump this thread up because i still need a solution. Right now i have Plesk 10.4.4 with PHP53 support enabled, wich installed PHP 5.3.3 and libxml2 2.6.26 wich doesn't work together. AFAIK i need to upgrade my PHP to a higher version (may be 5.3.6 or 5.3.8) and libxml2 to 2.7.3 (or better 2.7.8).

I can't use atomic repo because when i activate this repo it gives many errors when using yum update:

mysql-5.1.52-1.el5.art.x86_64 from installed has depsolving problems
--> Missing Dependency: mysql-libs = 5.1.52-1.el5.art is needed by package mysql-5.1.52-1.el5.art.x86_64 (installed)
php-sqlite-5.3.10-5.el5.art.i386 from atomic has depsolving problems
--> Missing Dependency: php-common = 5.3.10-5.el5.art is needed by package php-sqlite-5.3.10-5.el5.art.i386 (atomic)
mysql-5.1.52-1.el5.art.x86_64 from installed has depsolving problems
--> Missing Dependency: mysql-libs = 5.1.52-1.el5.art is needed by package mysql-5.1.52-1.el5.art.x86_64 (installed)
mysql-devel-5.1.52-1.el5.art.i386 from installed has depsolving problems
--> Missing Dependency: libndbclient.so.3 is needed by package mysql-devel-5.1.52-1.el5.art.i386 (installed)
mysql-5.1.52-1.el5.art.i386 from installed has depsolving problems
--> Missing Dependency: mysql-libs = 5.1.52-1.el5.art is needed by package mysql-5.1.52-1.el5.art.i386 (installed)
mysql-devel-5.1.52-1.el5.art.x86_64 from installed has depsolving problems
--> Missing Dependency: libndbclient.so.3()(64bit) is needed by package mysql-devel-5.1.52-1.el5.art.x86_64 (installed)
mysql-5.1.52-1.el5.art.i386 from installed has depsolving problems
--> Missing Dependency: mysql-libs = 5.1.52-1.el5.art is needed by package mysql-5.1.52-1.el5.art.i386 (installed)
php53-common-5.3.3-1.el5_7.6.x86_64 from installed has depsolving problems
--> php53-common conflicts with php-common
Error: Missing Dependency: mysql-libs = 5.1.52-1.el5.art is needed by package mysql-5.1.52-1.el5.art.i386 (installed)
Error: Missing Dependency: php-common = 5.3.10-5.el5.art is needed by package php-sqlite-5.3.10-5.el5.art.i386 (atomic)
Error: Missing Dependency: libndbclient.so.3()(64bit) is needed by package mysql-devel-5.1.52-1.el5.art.x86_64 (installed)
Error: Missing Dependency: mysql-libs = 5.1.52-1.el5.art is needed by package mysql-5.1.52-1.el5.art.x86_64 (installed)
Error: php53-common conflicts with php-common
Error: Missing Dependency: libndbclient.so.3 is needed by package mysql-devel-5.1.52-1.el5.art.i386 (installed)
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

So, please, how can i solve this situation and upgrade my PHP53?? I can't find any working method to do this simple (?) operation.
 
Back
Top