Fwd: MariaDB replacing MySQL
Norvald H. Ryeng
norvald.ryeng at oracle.com
Tue Mar 12 12:14:33 UTC 2013
On Mon, 11 Mar 2013 19:58:03 +0100, Kevin Kofler <kevin.kofler at chello.at>
wrote:
> Honza Horak wrote:
>> This doesn't solve all the issues -- if package like akonadi-mysql says
>> "Requires: mysql-server", then Oracle MySQL either wouldn't satisfy that
>> requirement or (in case it includes "Provides: mysql-server") RPM
>> choosing behavior would be ambiguous.
>
> And it should not satisfy it.
>
> We now changed the Requires in akonadi-mysql to mariadb-server to be
> sure of what we get.
This dependency is a problem. It makes it impossible to install
MySQL-server on a KDE system since mariadb-server and MySQL-server
conflict.
This would all be solvable if the packages were installable in
parallel, which is also the recommended solution [1]. This would
require some renaming, but it has several benefits:
- Users can choose to install either MySQL or MariaDB, or both.
- Package maintainers can choose to depend on one or the other.
- Package maintenance becomes easier since the packages don't mess
around with the same filenames.
A common virtual provide should solve dependencies for applications
that don't care which server they get. With that virtual provide comes
the upgrade issues around choosing a default. Could this be solved by
bumping the epoch of mariadb-server? Wouldn't that make yum choose the
highest versioned package, which would always be mariadb-server? Epoch
bumping may not be the prettiest solution, but if it works, we could
do:
If existing MySQL users are to be forced over to MariaDB:
mysql*: virtual provides
mariadb*: provides mysql*, epoch 1
mysql-community*: provides mysql*, epoch 0 (*)
If existing MySQL users are to remain on MySQL:
real-mysql*: virtual provides
mariadb*: provides real-mysql*, epoch 1
mysql* provides real-mysql*, epoch 0
Using alternatives could also be considered. In any case, the packages
have to be installable in parallel.
Regards,
Norvald H. Ryeng
(*) The name "MySQL" crashes with the standalone packages at
dev.mysql.com, and I think I read something about a problem with case
sensitive names in one of the mailing list threads. The software is
called "MySQL Community Server", so we suggest the "mysql-community"
prefix. The same prefix is already used by OpenSuSE.
[1]
https://fedoraproject.org/wiki/Packaging:Conflicts#Common_Conflicting_Files_Cases_and_Solutions
More information about the devel
mailing list