The announcement of the MySQL Yum repositories was a long overdue request on my wish list. While it was possible to find MySQL at http://public-yum.oracle.com/ it was not the GA version MySQL 5.6. (As I write this post, I check and find that indeed it now appears this may be possible http://public-yum.oracle.com/repo/OracleLinux/OL6/MySQL56/).
I have previously installed MySQL 5.6.13 via rpms downloaded from MySQL Downloads, so I expected the upgrade to be straightforward. Following Chapter 3. Upgrading MySQL with the MySQL Yum Repository I had no success.
$ sudo yum update mysql-server Loaded plugins: fastestmirror, presto Loading mirror speeds from cached hostfile * base: mirror.lug.udel.edu * extras: mirror.cisp.com * updates: centos.mirror.constant.com Setting up Update Process Package(s) mysql-server available, but not installed. No Packages marked for Update
Looking at what information is available for the mysql-server package (This is the package name specified at Chapter 1. Installing MySQL on Linux Using the MySQL Yum Repository I find.
$ sudo yum info mysql-server Loaded plugins: fastestmirror, presto Loading mirror speeds from cached hostfile * base: mirror.lug.udel.edu * extras: mirror.cisp.com * updates: centos.mirror.constant.com Installed Packages Name : MySQL-server Arch : x86_64 Version : 5.6.13 Release : 1.el6 Size : 235 M Repo : installed Summary : MySQL: a very fast and reliable SQL database server … Available Packages Name : mysql-server Arch : x86_64 Version : 5.1.69 Release : 1.el6_4 Size : 8.7 M Repo : updates
This DOES NOT actually show what I would expect. I had to in fact search for mysql-community-server (NOTE: I discovered this as a note after the previously mentioned package name This installs the package for MySQL server (mysql-community-server) and also packages).
$ sudo yum info mysql-community-server Loaded plugins: fastestmirror, presto Loading mirror speeds from cached hostfile * base: mirror.lug.udel.edu * extras: mirror.cisp.com * updates: centos.mirror.constant.com Available Packages Name : mysql-community-server Arch : x86_64 Version : 5.6.14 Release : 3.el6 Size : 51 M Repo : mysql-community
I suspect I cannot update this (as it’s not actually installed), which is confirmed with.
$ sudo yum update mysql-community-server Loaded plugins: fastestmirror, presto Loading mirror speeds from cached hostfile * base: mirror.lug.udel.edu * extras: mirror.cisp.com * updates: centos.mirror.constant.com Setting up Update Process Package(s) mysql-community-server available, but not installed. No Packages marked for Update
So, I am left wit the option of installing this (again I’m not confident), and again confirmed.
$ sudo yum install mysql-community-server Loaded plugins: fastestmirror, presto Loading mirror speeds from cached hostfile * base: mirror.lug.udel.edu * extras: mirror.cisp.com * updates: centos.mirror.constant.com Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package mysql-community-server.x86_64 0:5.6.14-3.el6 will be installed --> Processing Dependency: mysql-community-common(x86-64) = 5.6.14-3.el6 for package: mysql-community-server-5.6.14-3.el6.x86_64 --> Processing Dependency: mysql-community-client(x86-64) = 5.6.14-3.el6 for package: mysql-community-server-5.6.14-3.el6.x86_64 --> Running transaction check ---> Package mysql-community-client.x86_64 0:5.6.14-3.el6 will be installed --> Processing Dependency: mysql-community-libs(x86-64) = 5.6.14-3.el6 for package: mysql-community-client-5.6.14-3.el6.x86_64 ---> Package mysql-community-common.x86_64 0:5.6.14-3.el6 will be installed --> Running transaction check ---> Package mysql-community-libs.x86_64 0:5.6.14-3.el6 will be installed --> Finished Dependency Resolution Dependencies Resolved ======================================================================================================================================================================= Package Arch Version Repository Size ======================================================================================================================================================================= Installing: mysql-community-server x86_64 5.6.14-3.el6 mysql-community 51 M Installing for dependencies: mysql-community-client x86_64 5.6.14-3.el6 mysql-community 18 M mysql-community-common x86_64 5.6.14-3.el6 mysql-community 296 k mysql-community-libs x86_64 5.6.14-3.el6 mysql-community 1.8 M Transaction Summary ======================================================================================================================================================================= Install 4 Package(s) Total download size: 71 M Installed size: 321 M Is this ok [y/N]: y Downloading Packages: Setting up and reading Presto delta metadata Processing delta metadata Package(s) data still to download: 71 M (1/4): mysql-community-client-5.6.14-3.el6.x86_64.rpm | 18 MB 00:00 (2/4): mysql-community-common-5.6.14-3.el6.x86_64.rpm | 296 kB 00:00 (3/4): mysql-community-libs-5.6.14-3.el6.x86_64.rpm | 1.8 MB 00:00 (4/4): mysql-community-server-5.6.14-3.el6.x86_64.rpm | 51 MB 00:02 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 21 MB/s | 71 MB 00:03 warning: rpmts_HdrFromFdno: V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql Importing GPG key 0x5072E1F5: Userid : MySQL Release EngineeringPackage: mysql-community-release-el6-3.noarch (@/mysql-community-release-el6-3.noarch) From : /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql Is this ok [y/N]: y Running rpm_check_debug Running Transaction Test Transaction Check Error: file /usr/bin/mysql_config from install of mysql-community-client-5.6.14-3.el6.x86_64 conflicts with file from package MySQL-devel-5.6.13-1.el6.x86_64 file /usr/bin/mysql from install of mysql-community-client-5.6.14-3.el6.x86_64 conflicts with file from package MySQL-client-5.6.13-1.el6.x86_64 ... file /usr/share/mysql/errmsg-utf8.txt from install of mysql-community-common-5.6.14-3.el6.x86_64 conflicts with file from package MySQL-server-5.6.13-1.el6.x86_64 Error Summary -------------
At this time I believe it’s not possible to update from official MySQL rpms to the official yum repository, which is rather disappointing. I would have assumed this was a test case. Hopefully, somebody with better package management skills can shed some light!
MySQL Yum Repository Installation
The following steps were used to Install the MySQL repository.
$ cd /tmp $ wget http://repo.mysql.com/mysql-community-release-el6-3.noarch.rpm $ sudo yum localinstall mysql-community-release-el6-3.noarch.rpm $ sudo yum repolist enabled | grep “mysql-community”
Simon Mudd says
If what you say is correct then I’m astounded that Oracle are providing different rpms to the ones they previously provided for RHEL6 and forks. I was certainly expecting to see MySQL-server, MySQL-client …. etc rpms to appear and to have to change this setup for an installed rpm base of a few servers makes this new repo completely pointless.
So going to check later and if this is the case I am also rather disappointed as they will now have to support 2 sets of rpms for the same distribution which is even more work.
In the past I have bumped into various rpm packaging issues with MySQL and now Oracle’s rpm builds of the MySQL database. It is really a shame to see another case of this.
ronald says
@Simon,
The following was pointed out to me by an Oracle employee in the docs at http://dev.mysql.com/doc/mysql-repo/en/linux-installation-yum-repo.html
“The following instructions assume that no versions of MySQL (whether distributed by Oracle or other parties) have already been installed on your system;”
A subsequent page goes on to say “The installed third-party MySQL distribution must first be uninstalled before you can use the MySQL Yum repository to install MySQL, or the installation process will give an error.”
I am requesting more information, however this description as it reads is disappointing.
Terje Rosten says
Hi guys!
Nice to see interest in Yum repository offering.
The new repo packages have several features not found in packages from http://dev.mysql.com,
among these are multilib support, systemd (for Fedora packages), rebuilding from source rpms,
building compat libs, correct filtering, requires, provides and obsolete and avoid postscripts
in packages which break the yum transaction (which is ok in rpm context).
Why haven’t we added these to the RPMs on dev.mysql.com?
Simply because we believe in stability and reliability. If you started on the 5.6
train using RPMs from dev.mysql.com, you should not be forced to accept
changes like these. If you want, you’re welcome to switch to the yum
repo, but it’s your choice. We will support RPMs from both sources, and
we will not spring surprises on our users.
We wanted normal lowercase packages names in the new packages
(with alias as mysql-server with friends), reusing MySQL-
names would cause even more confusion.
When adding something new, some change is required, however we hope user
experience is improving.
If you find other issues with the repo package set, please report.
Thanks!
Sheeri says
In my view, it’s a one-time pain, but it’s well-worth it because Percona and MariaDB packages don’t conflict. It was a pain to upgrade from MariaDB 5.5 to MySQL 5.6 because MariaDB 5.5 wanted to overwrite the mysql-server package, and Percona wanted to install their version of mysql-shared.
I’m sure they heard similar outrage from folks who switched, and naming the packages this way removes that problem. That’s just one theory, of course. But you can’t go from MariaDB or Percona 5.5 to MySQL 5.6 without having to uninstall and reinstall anyway.