Upgrading to MySQL 5.0.54 on RHEL and CentOS

December 27, 2007 by · 24 Comments 

It's been a while (3 months) since I've posted a MySQL update. The Enterprise release of 5.0.50, the Community release of 5.0.51, and the Enterprise release of 5.0.52 all refused to pass the testing at the end of the build process. Thankfully though, they got that worked out (MySQL bug 33050), so I'm now making binaries for MySQL 5.0.54 available in my repo.

Another issue that keeps coming up is the availability of the Enterprise sources. A few individuals have been kind enough to post links or email me with locations where I could download the Enterprise source packages but I didn't get that for 5.0.52 or 5.0.54. My original solution to this problem, as was done for my first release of 5.0.48, was to check the Enterprise sources out from BitKeeper and then to merge in the man/info pages from the MySQL web site. That solution is exactly what I'm going to be using from now on as, short of kicking out the funds for an Enterprise subscription of my own, it seems to be the only way to reliably get the source packages.

The sources for the 5.0.54 release are courtesy of Johnny Hughes, one of the CentOS maintainers. He left a comment over on my 5.0.48 post letting me know about the testing patch mentioned above, as well as his success in getting packages built for the 'centosplus' repo for CentOS 4. Thanks again. Oh, and for those that don't know, the packages I create and those for the CentOS 4 'centosplus' repo are almost identical. The largest change is that in my repo the 'mysql-libs' package is merged with the 'mysql' package, just as it is in the original packages for RHEL, CentOS, and Fedora.

MySQL 5.0.54 Release Notes

Update (9/24/2009): Packages deleted, use the yum repository instead.

Comments

24 Responses to “Upgrading to MySQL 5.0.54 on RHEL and CentOS”
  1. Slappy says:

    Thanks again Jason. Once again worked without problem.

  2. zhengfish says:

    HELP!!!

    I cannot build the rpm files, the test is failed, the error output as following.

    ------------------------------ENV----------------------------------------------
    [[email protected] ~]$ whoami
    brewbuilder

    [[email protected] ~]$ uname -a
    Linux vpnmand 2.6.9-55.EL #1 Wed May 2 13:52:16 EDT 2007 i686 i686 i386 GNU/Linux

    [[email protected] ~]$ cat /etc/issue
    CentOS release 4.5 (Final)
    Kernel \r on an \m

    ------------------------------OUTPUT----------------------------------------------
    merge [ pass ] 751
    metadata [ pass ] 81
    mix_innodb_myisam_binlog [ pass ] 4239
    multi_statement [ pass ] 22
    multi_update [ pass ] 24674
    myisam-blob [ pass ] 5353
    myisam [ pass ] 1807
    myisampack [ pass ] 75
    mysql [ fail ]

    --- /home/brewbuilder/rpms/BUILD/mysql-5.0.54/mysql-test/r/mysql.result 2007-12-24 18:44:20.000000000 +0300
    +++ /home/brewbuilder/rpms/BUILD/mysql-5.0.54/mysql-test/r/mysql.reject 2007-12-28 13:00:21.000000000 +0300
    @@ -162,8 +162,8 @@
    ERROR 1049 (42000) at line 1: Unknown database 'invalid'
    Test connect with dbname + hostname
    Test connect with dbname + _invalid_ hostname
    -ERROR 2005 (HY000) at line 1: Unknown MySQL server host 'invalid_hostname' (errno)
    -ERROR 2005 (HY000) at line 1: Unknown MySQL server host 'invalid_hostname' (errno)
    +ERROR 2003 (HY000) at line 1: Can't connect to MySQL server on 'invalid_hostname' (errno)
    +ERROR 2003 (HY000) at line 1: Can't connect to MySQL server on 'invalid_hostname' (errno)
    The commands reported in the bug report
    ERROR 2005 (HY000) at line 1: Unknown MySQL server host 'cyril has found a bug :)XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' (errno)
    Too long dbname

    mysqltest: Result content mismatch

    Aborting: mysql failed in default mode.
    To continue, re-run with '--force'.
    Stopping All Servers
    make: *** [test-ns] Error 1
    error: Bad exit status from /home/brewbuilder/rpms/tmp/rpm-tmp.54356 (%build)

    RPM build errors:
    Bad exit status from /home/brewbuilder/rpms/tmp/rpm-tmp.54356 (%build)

  3. Jason says:

    @Zhengfish,

    Have you tried building more than once? Are you trying to build on a production box or on a development system? I've found that the MySQL tests will sometimes fail if run on a slow or heavily-loaded system. Finally, is your system otherwise up-to-date (you've run "yum update" recently and allowed it to install all available updates)?

  4. zhengfish says:

    Hi, Jason,
    I rpmbuild it twice on one centos-4.5 box( production box ), and it failed at the same test error point.
    Just now I rpmbuild it on another centos-5.0 box( development system ), and it also failed and have the same error text.
    Would you pls give me some others suggestions?

    THX a LOT!!

  5. Jason says:

    @zhengfish,

    It's got to be something specific to your systems as I was able to build it twice on each of my development systems (EL4 & EL5, 32-bit & 64-bit).

    Those errors seem to be about the host name. I'm not sure whether or not the test uses a completely custom host name or whether or not it modifies yours, but what is the host name of your system? Does it contain any non-English characters?

    Finally, have you tried just using my binary packages? There shouldn't be any deps that aren't available from the 'base' repo so they should install on any RHEL/CentOS 4 or 5 system.

  6. Mark Harburn says:

    Hey, We use your mysql bin's and it's a life saver for us, looking forward to 5.1 builds. I might get a subscription when they go 5.1 and pass the sources on as a way to say thanks 🙂

  7. Jason says:

    @Mark,

    Once 5.1 becomes the GA build I will move forward with it. The first few releases will probably not be part of the repo (so old applications don't break) but I'll post the links. If you're willing to post the sources then that would be appreciated.

  8. Jesse says:

    Trying to upgrade all the packages on my system and one keeps failing to install.

    MySQL-python.x86_64 1.0.0-1.RHEL4.1 installed
    MySQL-python.x86_64 1.2.1_p2-1.el4.1 base

    It keeps giving the following error
    ---> Package MySQL-python.x86_64 0:1.2.1_p2-1.el4.1 set to be updated
    --> Running transaction check
    --> Processing Dependency: libmysqlclient_r.so.14(libmysqlclient_14)(64bit) for package: MySQL-python
    --> Finished Dependency Resolution
    Error: Missing Dependency: libmysqlclient_r.so.14(libmysqlclient_14)(64bit) is needed by package MySQL-python

    I did a locate to see where the files are and it's installed in two places
    /usr/lib64/mysql/libmysqlclient_r.so.14
    /usr/lib64/mysql4/mysql/libmysqlclient_r.so.14

    Any thoughts on this issue?

  9. Joe S. says:

    So I just add the Yum Repo file and its that easy correct? I am using mysql 5.0.22 and php 5.1.6 so I should just rum yum update on both of those and it should work correct? Does it affect anything that I am using plesk or do I need to do anything special thanks.

  10. Just for the record ... the reason that the CentOSPlus version does contain mysql-libs is because Red Hat did change their spec in the Red Hat Web Application Stack (RHWAS) to do it that way. It is also like that in the newer Fedora / Rawhide versions.

    Both approaches are fine (I would think), but I didn't want people to think CentOS was deviating from what upstream was putting out 🙂

  11. JP White says:

    Are the mysql shared compatibility libraries (3.23, 4.x, 5.x libs) included in the 'mysql' package? Or just the current shared libraries.

  12. Jason says:

    @Joe,

    Yes, that should be it. It's worth mentioning though that I no longer do any in-depth testing with control panels (as I no longer use them), so I cannot guarantee compatibility with Plesk. That said, of the panels currently available, Plesk is the most upgrade-friendly.

    @Johnny,

    Yeah, I know that. But like you said, I didn't want to deviate from what was originally used. The default packages don't have a "libs" package so I don't have one either. If EL6 comes with a "-libs" package then I'll probably go back to that.

    @JP,

    Compatibility libs are not included in the 'mysql' package. You'll need to install 'mysqlclient10' or 'mysqlclient14' for 3.23 and 4.0 respectively.

  13. carlos says:

    I wonder if you have tried mysql 5.1 in a production server ?

  14. Jason says:

    @carlos,

    Nope, not yet. I'm looking at whipping up some test packages over the next week or two though since 5.1 is now considered to be a "Release Candidate". As mentioned before, even once 5.1 becomes stable I won't be integrating it into the repo for a while because there are likely to be breaking changes. Any binaries I build though will be available for download.

  15. ross says:

    Hi mate,
    After installed using yum and your repo the start/stop server script is missing in init.d ?
    any idea why?

    thanks

  16. ross says:

    I've handled.
    thanks anyway

  17. Jason says:

    @ross,

    I assume that you didn't install 'mysql-server'. If that wasn't the case, let me know.

  18. dbembibre says:

    As always the rebuild was fine.
    Thanks a lot for your work

  19. Andrew says:

    Hi Jason,

    Thanks for all your work. I did a yum update using your repo on a clean server and everything worked great until I restarted apache and at first I got the same message as John did in another post:

    Starting httpd: httpd: Syntax error on line 147 of /etc/httpd/conf/httpd.conf: Cannot load /etc/httpd/modules/mod_access.so into server: /etc/httpd/modules/mod_access.so: cannot open shared object file: No such file or directory

    So I made a backup of httpd.conf and replaced with the .rpmnew one that was created, restarted apache and now I receive the other error message that the chap John also had:

    Starting httpd: httpd: Syntax error on line 209 of /etc/httpd/conf/httpd.conf: Syntax error on line 2 of /etc/httpd/conf.d/fcgid.conf: API module structure 'fcgid_module' in file /usr/lib/httpd/modules/mod_fcgid.so is garbled - expected signature 41503232 but saw 41503230 - perhaps this is not an Apache module DSO, or was compiled for a different Apache version?

    Not too sure what to do now, any help would be greatly appreciated! Oh yeah and I have also replaced the php.ini with the rpmnew one that was created. Is their another file I forgot to overwrite?

  20. Andrew says:

    Forgot to mention that this was on a fresh Media Temple (dv) base 3 server if it helps, running Centos 4.2.

  21. Jason says:

    @Andrew,

    You cannot use the old config files when moving from httpd 2.0.x to 2.2.x and from PHP 4.x/5.0.x/5.1.x to 5.2.x. Well, actually, the latter would probably work but I wouldn't recommend it.

    As to that fgcid_module message, you've got modules installed that are not compiled for the correct version of httpd. You will need to remove them or recompile them for httpd 2.2.x.

  22. Jesse says:

    It looks like 5.0.62 was released

  23. Shouman says:

    is it resolve the problem on duplicate replicate_do_db if I install that RPM ?

Trackbacks

Check out what others are saying about this post...
  1. Duplicate binlog-do-db entry -- Solution says:

    [...] Happily, I have been able to find that Jason Litka has posted the source rpm to http://www.jasonlitka.com/2007/12/27/upgrading-to-mysql-5054-on-rhel-and-centos/ [...]



This site is no longer updated. If you have a need for RHEL/CentOS LAMP Stack updates outside the normal channels, I recommend ART. https://updates.atomicorp.com/channels/