On CentOS 7 MariaDB has (quite rightfully IMHO) replaced MySQL in the repositories however this has caused me a few problems. Since MySQL was so widely used there are other things that have MySQL as a requirement/dependency. Mainly my problem was some puppet modules that wanted the mysql-server package installed before they would proceed with the remainder of their instructions.
To get around the problem I set about creating a dummy MySQL package that would act as a metapackage. It would not install anything itself but would list MariaDB as a requirement. So puppet would see that the mysql-server package is installed and MariaDB would be there to ensure that the database functionality actually exists.
SPEC file
I created the spec file below:
Name: mysql-server Version: 5.5.41 Release: 1 Summary: Metapackage to install mariadb via the mysql-server package name Group: Documentation License: GPL BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) Provides: mysql-server Requires: mariadb-server mariadb-libs %description %prep %build %install rm -rf %{buildroot} %clean rm -rf %{buildroot} %files %defattr(-,root,root,-) %changelog
Build
And built the RPM package with:
rpmbuild -ba ./SPECS/mymetapackage.spec
I added the resulting RPM file ./RPMS/x86_64/mysql-server-5.5.41-1.x86_64.rpm to my personal yum repository. So now when I try to
yum install mysql-server
I get the following: