Re: Upgrading to PHP 5.2, MySQL no longer bundled
| From: | William Beaumont | Date: | Mon, 04 Jan 2010 21:01:00 +0000 |
| Subject: | Re: Upgrading to PHP 5.2, MySQL no longer bundled | ||
| References: | 1 2 | Groups: | php.install |
| Request: | Send a blank email to php-install+get-19831@lists.php.net to get a copy of this message | ||
It's clear to me that trying to do all this upgrading manually isn't wise. On the other hand, RPM Package Manager seems to not have PHP 5.2 or later.
I found this blog post which describes a situation similar to mine: http://pbjots.blogspot.com/2008/03/yum-php-update-to-524-on-plesk.html
(My server is also running Plesk.)
The blog post links to this shell script: http://www.atomicorp.com/installers/atomic.sh
Would it be wise to trust this script? I've looked at it, and the most important thing it seems to do is download an RPM package from atomicorp.com and install it using the RPM command.
On 1/4/2010 11:30 AM, Étienne Buira wrote:
William Beaumont wrote:I'm trying to upgrade to PHP 5.2 on a Linux machine (RedHat). For the "./configure" step, I copied the configure command exactly as it appears in the results of "php -i". When I run it in the new installation folder, I get a message telling me that the program can't find the MySQL header files in the location specified, and warns me that MySQL is no longer bundled with PHP. (The location specified is "/usr".)Would be nice to have that ./configure lineI've looked around on the Internet, and apparently one key file is "mysql.h". Indeed, there is no such file under /usr/include/, though there are tons of other header files. I used "find" to locate the file, and it's nowhere on the server. (I didn't setup the server, the hosting company did that.) I guess the header files don't exist if MySQL comes bundled with the server, or something like that? I'm not sure. My server is running MySQL 5.0.45.Usually, when software is distributed as binary, there is a "-dev" package to hold headers files (among other things), then try to install a package like mysql-dev would help (if mysql is installed with package manager, but you would then probably want to install php with package manager as well).Some have suggested that, rather than re-installing MySQL (ugh), you simply run this command: "yum install mysql-devel". When I do that, the program analyzes my system and tells me it needs to update two packages: "mysql" and "mysql-server". I don't like the sound of that. I don't want to change anything to do with MySQL, I just want my new version of PHP to work with it. What should I do?This depends why mysql/mysql-server are older than newest package. If it is because of a poorly managed server, ask them to upgrade or do it yourself (I suggest you to make a SQL dump of all databases, even if binary format should be compatible over versions, can be a good idea to check for compromission too, depending on the case). If it is for other reasons, tell them their reasons should be excellent to keep an old package, and read yum manual to install the -devel version that matches mysql{,-server} versions. Anyway, I would advise you to choose between two options : 1. Have both php/mysql (and probably apache and maybe some others) managed through package manager 2. Have all of these software compiled by hand from source, and ideally kept in some path (usually /usr/local/)