4

Centos 7 x64, mysql-community 5.7 is installed from mysql57-community repo.

I am in the process of switching from mysql to percona. However, the first step is scary when I try to uninstall mysql.

Yum is removing system components such as crontabs and redhat-lsb-core alone with mysql.

# yum remove mysql-community-*
=====================================================================================================================================
 Package                             Arch           Version                     Repository                                      Size
=====================================================================================================================================
Removing:
 mysql-community-client              i686           5.7.18-1.el6                @mysql57-community                              87 M
 mysql-community-common              i686           5.7.18-1.el6                @mysql57-community                             2.5 M
 mysql-community-libs                i686           5.7.18-1.el6                @mysql57-community                             7.8 M
 mysql-community-libs-compat         i686           5.7.18-1.el6                @mysql57-community                             4.8 M
 mysql-community-server              i686           5.7.18-1.el6                @mysql57-community                             699 M
Removing for dependencies:
 cronie                              i686           1.4.4-16.el6_8.2            @updates                                       169 k
 cronie-anacron                      i686           1.4.4-16.el6_8.2            @updates                                        38 k
 crontabs                            noarch         1.10-33.el6                 @anaconda-CentOS-201605211917.i386/6.8         2.4 k
 geoipupdate-cron                    noarch         2.3.1-2.el6                 @city-fan.org                                  113
 postfix                             i686           2:2.6.6-8.el6               @base                                          9.4 M
 redhat-lsb-core                     i686           4.0-7.el6.centos            @base                                           22 k
 sysstat                             i686           9.0.4-33.el6                @base                                          804 k

Transaction Summary
=====================================================================================================================================
Remove       12 Package(s)

Why is that? Is there a graceful way to remove mysql?

This does not make sense because I installed mysql from mysql57-community repo. How could postfix depend on mysql?

So far my thought is re-install these packages after the switch is done. But I'd wish to find a better solution.

2
  • When you're install mysql? Aug 11, 2017 at 19:18
  • "How could postfix depend on mysql?" It could # ldd /usr/libexec/postfix/master | grep mysql libmysqlclient.so.18 => /usr/lib64/mysql/libmysqlclient.so.18 (0x00007f83f983b000) Have I missed something, but AFAIK CentOS 7 doesn't have builds for i686 architecture.
    – ALex_hha
    Aug 14, 2017 at 18:58

2 Answers 2

5

Postfix depends on having a package that provides libmysqlclient.

You can remove the old packages (mysql57-community) and install the new ones (Percona) in a single yum transaction using yum swap. This will ensure that Postfix will have the dependency before and after the transaction and yum will not try to remove it.

yum swap -- install percona-whatever-etc -- remove mysql-whatever-etc

2
  • Good to know the command yum swap. Have been using centos for years not realizing this feature.
    – Reed
    Aug 12, 2017 at 1:40
  • It's been added recently. In older versions you have to use the yum shell, put the commands in, then commit. Aug 12, 2017 at 1:58
0

I believe it's related to packages having mysql-community-libs as dependence, by the looks of the issue reported here.

To answer your question, postfix depends on it for its MySQL-backed database for virtuals, accesses and aliases (more details on the official docs).

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .