MySQL 5.1 packages live, PHP & httpd also upgraded
September 13, 2010 by Jason · 100 Comments
If you haven't noticed yet, packages for MySQL 5.1 have been moved to the public repos. I whipped up updates for PHP 5.2.14 and httpd 2.2.16 as well. For those that have programs compiled against the mysql 5.0.x client libraries, a mysqlclient15 package has been added.
As I mentioned in an earlier post, there are some potential issues you might run into when upgrading from MySQL 4.1 or 5.0. It is absolutely critical that you run 'mysql_upgrade' after installing the update. Failure to do so will cause serious weirdness with your databases.
@Peter,
I'm answering this publicly because you decided to post your criticism in an unrelated thread without a valid email address, rather than using the contact form as would have been appropriate.
Nothing in that message you saw (that only appears if you are blocking the adverts for an extended period of time, and only 3 times) tells people to click the ads on the site. It asks that you disable your popup blocker for this site and read the adverts so that you might click one if you are interested, and if you are unwilling it also offers two alternatives you could consider, directly contributing or posting a link on your site to this one, and if you choose to do nothing that's also ok). This is not against Google's TOS. Forcing someone to click an advert in order to see the site would be, but that is something I'd never do.
One bit of the info you posted is 100% incorrect. If you are bidding $10 per click on a keyword/phrase then the site displaying the advert will get a lot more than $0.10-$0.50 if clicked. Based on my own experience with AdWords at work, I'd have to say you're more likely quoting your cost per conversion. I don't know what you're selling, but if you're looking to drop that number and your conversion rate is lower than 2%, I'd say you probably need to write more relevant adverts, work on optimizing your site for the customer experience, lower your prices, sell a better product, etc. As someone working in eCommerce, I know, it's a never-ending struggle.
If your adverts are appearing on this site and you'd rather they didn't please send me the info and I'll add them to the blacklist so they never show again.
Lastly, I'm glad you're enjoying the (free) server upgrades I've posted. My assumption is that you're using these on servers related to your eCommerce operations. If so, please send me the IP addresses of any servers you might have so I can ban those from my yum repo. I typically don't care if people use my (freely-given) efforts to pad their own bottom lines, and you'd be the first person I'd ever have done that to, but with your attitude, in this case, I'll make an exception.
If you'd like to take this conversation further I'd be glad to speak to you. That said, please use the contact form on the About page, and please make sure you give a valid email address, otherwise I can't respond to you. Anything else you post like this in public will be deleted.
I'm a little confused as to why the memory_limit runtime directive in php.ini is being ignored (defaulting to 16M). Unless I'm interpreting the documentation wrong, --enable-memory-limit at configure time is not required in > 5.1. Is there a trick to this? This repo is great and thank you!!!
Oops! Just noticed /etc/php.d/ffmpeg-php.ini ... sorry about that. Thanks again!
Apache 2.2.17 was released last Tuesday with 3 fixes to old security-related bugs: http://httpd.apache.org/security/vulnerabilities_22.html
HI Jason,
Thanks for an excellent service.
I've just tried to yum update php-xml and get the following error
[[email protected] template2]# yum install php-dom
Loading "installonlyn" plugin
Setting up Install Process
Setting up repositories
Reading repository metadata in from local files
Parsing package install arguments
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for php-xml to pack into transaction set.
php-xml-5.2.13-jason.1.i3 100% |=========================| 15 kB 00:00
---> Package php-xml.i386 0:5.2.13-jason.1 set to be updated
--> Running transaction check
--> Processing Dependency: php-common = 5.2.13-jason.1 for package: php-xml
--> Finished Dependency Resolution
Error: Missing Dependency: php-common = 5.2.13-jason.1 is needed by package php-xml
All the rest of the packages are at 5.2.14 level
# rpm -qa |grep php
php-xcache-1.3.0-jason.2
php-common-5.2.14-jason.1
php-cli-5.2.14-jason.1
php-mysql-5.2.14-jason.1
php-gd-5.2.14-jason.1
php-pdo-5.2.14-jason.1
php-5.2.14-jason.1
php-ldap-5.2.14-jason.1
php-devel-5.2.14-jason.1
php-mbstring-5.2.14-jason.1
php-xmlrpc-5.2.14-jason.1
php-soap-5.2.14-jason.1
php-pear-1.4.9-4
@Gary,
php-dom is included in php-xml, so try directly installing that one. If it doesn't work, send me info on your platform, a list of the enabled repos, and a list of all the packages on your system via the contact form on the About page.
I have an app that required php-dom, and I guess yum was smart enough to work out that I needed php-xml (see my first post ), however there was still a version issue.
I managed to get it to work by downloading the rpm for php-xml directly from your site, and then installing it manually using rpm.
For some reason yum didn't quite manage to get it, so thought there may be an issue with the config in the repository.
Many thanks for your time.
Gary
Still having a problem with PEAR not working. php.nfo shows --without-pear in the configure command.
I show the following, but PEAR is not available, how can I enable it?
I specifically need the mail functions.
Package 1:php-pear-1.9.1-1.jason.1.noarch already installed and latest version
Package php-pear-Net-URL-1.0.15-1.el5.centos.noarch already installed and latest version
Package php-pear-Log-1.9.13-1.el5.centos.noarch already installed and latest version
Package php-pear-Mail-1.1.14-1.el5.centos.noarch already installed and latest version
Package php-pear-Mail-Mime-1.4.0-1.el5.centos.noarch already installed and latest version
Package php-pear-File-1.2.2-1.el5.centos.noarch already installed and latest version
Package php-pear-Auth-SASL-1.0.2-4.el5.centos.noarch already installed and latest version
Package php-pear-Date-1.4.7-2.el5.centos.noarch already installed and latest version
Package php-pear-Net-SMTP-1.2.10-1.el5.centos.noarch already installed and latest version
Package php-pear-HTTP-Request-1.4.2-1.el5.centos.noarch already installed and latest version
Package php-pear-Net-Sieve-1.1.5-2.el5.centos.noarch already installed and latest version
Package php-pear-Net-Socket-1.0.8-1.el5.centos.noarch already installed and latest version
Package php-pear-MDB2-2.4.1-2.el5.centos.noarch already installed and latest version
Package php-pear-MDB2-Driver-mysql-1.4.1-3.el5.centos.noarch already installed and latest version
Package php-pear-DB-1.7.13-1.el5.centos.noarch already installed and latest version
@Jeff,
I provide php-pear, as you've got installed, but not pre-compiled versions of all the packages. My recommendation would be to remove all the php-pear-* packages and use the "pear" and "pecl" commands from a SSH session to install and update the extensions you want.
Something Wong.
My hosts had do to this for me:
# yum remove mod_perl
# yum install --disablerepo=utterramblings mod_perl
and reinstall mod_perl from centos
The symptom was that Apache was failing to start.
Error was something like: "[notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec) /usr/sbin/httpd: symbol lookup error: /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/ServerUtil/ServerUtil.so: undefined symbol: ap_get_server_banner"
Big problems.
I ran yum update php not knowing it would also upgrade mysql and make it unstartable!
I can't run mysql_upgrade until it is up.
The error message I have says:
101102 12:04:27 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
101102 12:04:27 [ERROR] Error message file '/usr/share/mysql/english/errmsg.sys' had only 480 error messages,
but it should contain at least 641 error messages.
Check that the above file is the right version for this program!
/usr/libexec/mysqld: Unknown error 1146
101102 12:04:27 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
101102 12:04:28 InnoDB: Started; log sequence number 0 130459
101102 12:04:28 [ERROR] Aborting
pretty hot issue now!
any help possible here?
.. resolved by doing this...
http://shebangme.blogspot.com/2010/04/mysql-error-message-file-had-only-480.html
using the file from mysql-5.1.50.tar.gz
@Andrew,
That is an issue that several people (though a very small minority) have reported but none have been able to provide enough details so that I can duplicate and fix.
What OS are you running (RHEL or CentOS, 4 or 5)? What architecture (32-bit or 64-bit)? What version of MySQL did you have before? Where did it come from (base, centosplus, epel, rpmforge, mysql.com, etc.)?
I wish Redhat would get their s together and get the LAMP stack up-to-date. RHEL 5 is a joke of a dinosaur.
Greetings,
I started using your repo for the php 5.2.6 upgrade a few years back on a Godaddy VPS. Today via their control panel i upgraded php but mysql was also installed (before I had 5.0.45).
Thinking everything was fine I accessed one of my sites to delete some spam and got an db error, that is when I discovered mysql was updated as well.
I saw your post about running upgrade_mysql right after the upgrade, ran it and got a bunch of repair table messages in every single DB.
now trying to backup before I do the repair via phpmyadmin i get an error message that reads:
Your PHP MySQL library version 5.0.45 differs from your MySQL server version 5.1.50. This may cause unpredictable behaviour
reading further people indicate that php is linked to the old MySQL hence why i get the message.
Any suggestions on how to go about fixing these issues? 🙂
Prior to the upgrade I had php 5.2.6 jason and default mysld 5.0.45 - CentOS 5.3
phpMyAdmin 2.11.9.6
localhost
server version 5.1.50
MySQL client version: 5.0.45
ok figured I would go ahead and backup anyways, then once the first DB backup was done I opened the SQL dump and noticed that mysql server was listed as 5.1.50 and php was 5.2.6 and thought
ahh.. since I httpd was not updated it was not restarted, so it has not seen the new php update I restarted it [service httpd restart] and now the phpmyAdming error is gone and I am just left with the corrupted tables.
so this is where I am at now.
I have repaired the tables in all DB's
The issue I have is with the site that exhibit the error when trying to delete a spammer.
check table returns this
warning - table is marked as crashed
warning - 1 client is using or hasn't closed the table properly
error - found 25201 keys of 25202
error - corrupt
Any ideas?
@Gus,
Mysql_upgrade will run a quick repair on any table in an outdated format. It will not touch tables that are damaged. Repair your tables, using extended repair if necessary, and if that doesn't fix it you'll need to restore from a backup.
I'm a bit confused by your first comment that says you updated your server through the GoDaddy control panel. Assuming that the tables werent corrupt to start, whatever that process was would be my first suspect.
Hi,
Thank you for your reply.
I ran mysql_upgrade once I notice mysql was upgraded via yum log - I used godaddy's VPS control panel (GUI) to do the upgrade (it utilizes yum) instead of shell, so I that is why I didn't notice the DB being upgraded right away.
mysql_upgrade updated most tables in various DB's but it also reported that many had to be repaired including mysql own DB.
repair table was used to repair all the ones that displayed errors
It appears that my last DB with an [in use] error (50MB+) crashed post mysql upgrade / pre mysqpl_upgrade, during that spammer account deletion (forum software), repair table process returned back as OK but forum is actually acting strange in the topic where that spammer post used to exist. I suspect the delete process didn't fully complete and that is where my issue is now.
I upgraded php, mysql, and http and I am now receiving this error in phpmyadmin:
Your PHP MySQL library version 5.0.91 differs from your MySQL server version 5.1.50. This may cause unpredictable behavior.
I ran the mysql_upgrade and fixed all the tables that had issues. I've restarted httpd but I still get this error in phpmyadmin and I am not sure what to do to correct the issue. Any help is appreciated.
Thanks.
@Lew,
You've either not upgraded everything (httpd, mysql, php, etc.), you haven't restarted httpd, or you have multiple copies of httpd/php (some control panels do this).
I did the update through yum. I have CentOS if that matters any and I've restarted httpd.
Here are the versions that plesk is showing as installed and running:
php 5.2.14-jason.1
mysql 5.1.50-jason.1
httpd 2.2.16-jason.1
So I am assuming that somehow there are multiple copies somewhere that is interfering with the correct versions? Could you give me an idea on where to check or what to do in this situation? I'm not by any means a linux guru. Thanks again. Feel free to email me if this will take some lengthy discussion.
@Lew,
Things to check:
- Does your mysql-server version match mysql? Update mysql-server if not.
- Do you have both 32- and 64-bit packages on your system? removing the 32-bit should fix that.
- Do you have a control panel installed? If so, see if it has it's own service (I believe Plesk is 'psa') and if so restart it.
My mysql server version is 5.1.50 which is correct. However, my mysql client version is 5.0.91, which is the issue. Then I ran the following:
-------------------------------------------------------------------------------------------------------------------
> # yum info mysqlclient15.x86_64
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Installed Packages
Name : mysqlclient15
Arch : x86_64
Version : 5.0.91
Release : 1.jason.1
Size : 5.1 M
Repo : installed
Summary : Backlevel MySQL shared libraries.
URL : http://www.mysql.com
License : GPL
Description: This package contains backlevel versions of the MySQL client libraries
: for use with applications linked against them. These shared libraries
: were created using MySQL %[version}.
-------------------------------------------------------------------------------------------------------------------
So apparently the 5.0.91 was mistakenly installed by me from your repo when I ran the update. How do I go about removing this and installing the correct version for the client?
(I also restarted psa to make sure that wasn't an issue and it didn't change anything. I am running 64bit and do not believe I have any 32bit installed.)
@Lew,
Send me a full list of the packages on your system as an attachment via the contact form on the About page.
Hi jason.
i didnt see your reply til today when coming back to deal with a new, unrelated issue.
My enviro is:
centOS 4 coming from Mysql 5.0.x
The big problem was that my intention was only to upgrade php.. the mysql mess was a big problem
@Andrew,
You can't use my repo to just update one program. It's intended to be an all-in-one approach.
Where did your MySQL 5.0 packages come from? Are you on 32-bit or 64-bit?
64 bit.
the 5.0 came from the original LAMP CentOS build
Hi,
when you update apache 2.2.17 ?
yo, what about http 2.2.17? 😉 Pleassseeeeeeeeeeee!
I'm considering building an AWS AMI for EC2 using your repo and I'm wondering a good way to yum install your entire repo on fresh centos installation. Is that a bad idea? There is a good centos base available from RightScale in the public AMI database.
@DerFalk,
Should be later this week or the beginning of the next.
@Aaron,
Are you a RightScale customer or just using their base AMI? If the latter, I'd probably write something into /etc/rc.local. Have it write out a yum config file for my repo, then yum update (the entire system), then yum install the packages you want from my repo.
I am using their base AMI (RightImage_CentOS_5.4_i386_v5.5.9_EBS (ami-25df8e60)). I did experience a few conflicts with some of the repos they have in their base image and yours. I like the idea of either a) maintaining EBS-based AMIs with various states of your repo or b) Doing what you said automating the creation of your yum repo file. Both cases involve also eliminating some repo links set by RightScale. I wish I could just pay for an utterramblings centos ami 😉 https://forums.aws.amazon.com/message.jspa?messageID=183408
I haven't found a bug-reporting page here, so I am writing this here ...
php-mysql-5.2.14 requires libmysqlclient.so.16 but this version is only available in
mysql-5.1.50. mysql-5.0.91 and mysqlclient15 only offer libmysqlclient.so.15.
So at the moment if you want to use php-mysql-5.2.14 you are forced to upgrade to mysql-5.1.50.
RHEL 5.5, x86_64
@Alex,
That's not a bug. If you want to use my repo you need to use all of it, not just PHP.
Hi.
Please upgrade httpd to 2.2.17 and mysql 5.1.53 - the latest version.
@Jason:
Thanks for your fast answer. I thought your two MySQL-Packages were supplied as seperate "packages", but obviously the newer one replaces the old one.
Sadly, because of Service-Level-Agreements, I am forced to use the supplied MySQL packages of RHEL 5.5.
Your PHP 5.2.13 Package would work, but PHP 5.2.14 contains some bugfixes we need.
Hi Jason. Thanks for the repository. It is awsome.
FYI - I recently updated to that latest repo versions of mysql. When I attempted to compile some C that makes use of the lib and header files, I got a compiler error indicating that my_compiler.h could not be found (referenced in my_globals.h). It seems that there is a bug (MySQL Bugs #55846) that has been fixed.
Mark
Can you tell me which link can links to repo for yum ?
@williamben
Click the link at the top of the site for "Yum Repository".
Will there be an upgrade httpd to 2.2.17 soon?
Yup, I just finished building a bunch of updates. I'll push them out public on Monday, I don't like to do releases on Friday.
EDIT: I made the updates active in the testing repo. If you use that, you can have them now.
I just updated mysql with your repository. Now mysqld won't start. I am seeing this in /var/log/mysqld.log
Error message file '/usr/share/mysql/english/errmsg.sys' had only 481 error messages,
but it should contain at least 641 error messages.
I did not run mysql_upgrade because I missed that mysql had updated. Suggestions on where to start digging myself out of this one?
The directions at http://shebangme.blogspot.com/2010/04/mysql-error-message-file-had-only-480.html should fix this for you. Make sure to download the matching version of mysql for the replacement errmsg.sys file.
Hi Jason,
I have the same problem as Lew dated Nov 9th, 2010. Can you offer any assistance?
Best,
Chris
just had the same exact problem today. Anybody got some advice?
@mattbeck,
If you've got a version mismatch with phpmyadmin and are using all my packages then you either haven't restarted httpd or you have multiple copies of php installed.
Hi Jason,
i also have a version mismatch after an update with yum and my question is: is there a possibility to uninstall this complete update?
Thx for your help,
michael