MySQL yum repositories

I think most people will agree that downloading RPMs from a website is kind of old fashioned when there are yum repos. After a number of user requests, we have now launched the official yum repos for MySQL.

Can’t wait? Neither can I. On a fresh install:

  1. Download a setup package for your distribution from http://dev.mysql.com/downloads/repo
  2. yum localinstall mysql-community-release-distro-release.noarch.rpm
  3. yum update
  4. yum install mysql-community-server

This works for fresh installs. If you’re upgrading from an older version, read about upgrading first.

What’s in the repo?

Currently, the repos contain the latest GA releases of MySQL ServerWorkbench and Connector/ODBC. As Tomas writes in his announcement, we expect to add more software in the future.

The repo replaces manual downloads from dev.mysql.com, but there’smore: The new packages align better with the distro (we’ve tried to follow each distro’s packaging guidelines) and now support

Curious about what we’ve done? Look inside the packages! Edit /etc/yum.repos.d/mysql-community.repo and enable the source repo. Then you can download the source package using yumdownloader:

Stronger community commitment

As the Linux distros’ point of contact into MySQL Engineering, I know how hard it is to maintain a package. I believe the repo project will help a lot. By having a repo of our own, we have to eat our own dog food. Not only that, but we will also gain more experience in packaging and more experience with the specific distros. Both are valuable when package maintainers ask for help.

As the repo project has advanced, I’ve noticed how much more aware the whole MySQL organization has become of Linux distros and their challenges. I believe this awareness and the experience we gain is a significant step forward that will greatly benefit package
maintainers. We stand by our commitment to help Linux distros with MySQL packaging, and I think there is no better example of this than the new 5.6 packages that just landed in Fedora rawhide.

Since this winter, we’ve been working with the MySQL package maintainer in Fedora, and finally, after a few delays, 5.6 is in and ready to be released in Fedora 21 (unfortunately, we didn’t make it in time for F20). If you look inside the packages, they are very similar
to what we have in our own repo, and this is no coincidence: we made both! That’s right, we contribute directly to Fedora. The new repo doesn’t change that. We will continue to offer our help, but now with even more experience.

Our goal is to keep the number of distro specific patches applied during packaging to a minimum. That will reduce the workload on package maintainers. There will probably always be a need for a small number of distro specific patches, but let’s try to keep it as low as possible.

Working towards this goal, we’ve fixed a number of bugs that have been with us for far too long. I can mention a few: 35019, 59905 and 62769. All these were patched during packaging. Now they’re fixed in the upstream source. We’re not finished yet, but at least it’s a good start. Our systemd script, tmpfiles.d, SELinux and multilib support should also keep the patch count down.

Feedback

The repos are new and exciting to us and many users, and we want to hear your opinion. Try it out and tell us what you think! Comment on this blog (or on Tomas’ blog). If you find a bug, report it in our bug system using the new repo bug category.

Try it!

About Norvald H. Ryeng

Norvald H. Ryeng has been working as a software engineer on the MySQL Optimizer Team since 2011. He is also the point of contact for package maintainers in Linux distributions. He holds a PhD in Computer Science from the Norwegian University of Science and Technology.

5 thoughts on “MySQL yum repositories

Leave a Reply

Your email address will not be published. Required fields are marked *


+ four = 11

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">