Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-4199

Installing postfix on CentOS 5.9 requires MariaDB-server

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 5.5.29
    • Fix Version/s: 5.5.31
    • Component/s: None
    • Labels:
    • Environment:
      CentOS 5.9 x86_64

      Description

      Since CentOS 5.9 the postfix package requires the package "mysql".

      With the vanilla CentOS mysql packages the "mysql" package is the client.

      This means that you only need to install the mysql client to use postfix.

      However when using MariaDB or Oracle RPMs the MariaDB-server package provides "mysql".

      This means that one must install MariaDB-server to install postfix, whereas not all servers need MariaDB-server, some just need MariaDB-client.

        Gliffy Diagrams

          Attachments

            Activity

            Hide
            tomp Tom Parrott added a comment -

            Here is the output from: yum provides mysql

            [root@tp ~]# yum provides mysql
            Loaded plugins: fastestmirror
            Loading mirror speeds from cached hostfile
            MySQL-server-5.5.28-1.rhel5.x86_64 : MySQL: a very fast and reliable SQL database server
            Repo : infinity-shared
            Matched from:
            Other : mysql

            mysql-5.0.95-3.el5.i386 : MySQL client programs and shared libraries
            Repo : base
            Matched from:

            mysql-5.0.95-3.el5.x86_64 : MySQL client programs and shared libraries
            Repo : base
            Matched from:

            mysql-5.0.95-5.el5_9.i386 : MySQL client programs and shared libraries
            Repo : updates
            Matched from:

            mysql-5.0.95-5.el5_9.x86_64 : MySQL client programs and shared libraries
            Repo : updates
            Matched from:

            MariaDB-Galera-server-5.5.28a-1.x86_64 : MariaDB: a very fast and robust SQL database server
            Repo : mariadb
            Matched from:
            Other : mysql

            MariaDB-server-5.5.29-1.x86_64 : MariaDB: a very fast and robust SQL database server
            Repo : mariadb
            Matched from:
            Other : mysql

            MariaDB-server-5.5.29-1.x86_64 : MariaDB: a very fast and robust SQL database server
            Repo : installed
            Matched from:
            Other : Provides-match: mysql

            Show
            tomp Tom Parrott added a comment - Here is the output from: yum provides mysql [root@tp ~] # yum provides mysql Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile MySQL-server-5.5.28-1.rhel5.x86_64 : MySQL: a very fast and reliable SQL database server Repo : infinity-shared Matched from: Other : mysql mysql-5.0.95-3.el5.i386 : MySQL client programs and shared libraries Repo : base Matched from: mysql-5.0.95-3.el5.x86_64 : MySQL client programs and shared libraries Repo : base Matched from: mysql-5.0.95-5.el5_9.i386 : MySQL client programs and shared libraries Repo : updates Matched from: mysql-5.0.95-5.el5_9.x86_64 : MySQL client programs and shared libraries Repo : updates Matched from: MariaDB-Galera-server-5.5.28a-1.x86_64 : MariaDB: a very fast and robust SQL database server Repo : mariadb Matched from: Other : mysql MariaDB-server-5.5.29-1.x86_64 : MariaDB: a very fast and robust SQL database server Repo : mariadb Matched from: Other : mysql MariaDB-server-5.5.29-1.x86_64 : MariaDB: a very fast and robust SQL database server Repo : installed Matched from: Other : Provides-match: mysql
            Hide
            tomp Tom Parrott added a comment -

            Here is the output from rpm -qi --requires postfix:

            [root@tp ~]# rpm -qi --requires postfix
            Name : postfix Relocations: (not relocatable)
            Version : 2.3.3 Vendor: CentOS
            Release : 6.el5 Build Date: Wed 09 Jan 2013 04:42:39 UTC
            Install Date: Sat 23 Feb 2013 18:34:12 UTC Build Host: builder10.centos.org
            Group : System Environment/Daemons Source RPM: postfix-2.3.3-6.el5.src.rpm
            Size : 9651254 License: IBM Public License
            Signature : DSA/SHA1, Wed 09 Jan 2013 18:55:48 UTC, Key ID a8a447dce8562897
            URL : http://www.postfix.org
            Summary : Postfix Mail Transport Agent
            Description :
            Postfix is a Mail Transport Agent (MTA), supporting LDAP, SMTP AUTH (SASL),
            TLS
            /bin/bash
            /bin/sh
            /bin/sh
            /bin/sh
            /bin/sh
            /bin/sh
            /sbin/chkconfig
            /sbin/service
            /usr/bin/perl
            /usr/sbin/alternatives
            /usr/sbin/groupadd
            /usr/sbin/useradd
            config(postfix) = 2:2.3.3-6.el5
            cyrus-sasl >= 2.1.10
            fileutils
            libc.so.6()(64bit)
            libc.so.6(GLIBC_2.2.5)(64bit)
            libc.so.6(GLIBC_2.3)(64bit)
            libc.so.6(GLIBC_2.3.4)(64bit)
            libc.so.6(GLIBC_2.4)(64bit)
            libcrypto.so.6()(64bit)
            libdb-4.3.so()(64bit)
            libdl.so.2()(64bit)
            liblber-2.3.so.0()(64bit)
            libldap-2.3.so.0()(64bit)
            libm.so.6()(64bit)
            libmysqlclient.so.15()(64bit)
            libmysqlclient.so.15(libmysqlclient_15)(64bit)
            libnsl.so.1()(64bit)
            libnsl.so.1(GLIBC_2.2.5)(64bit)
            libpcre.so.0()(64bit)
            libresolv.so.2()(64bit)
            libresolv.so.2(GLIBC_2.2.5)(64bit)
            libsasl2.so.2()(64bit)
            libssl.so.6()(64bit)
            libz.so.1()(64bit)
            mysql
            openldap >= 2.0.27
            openssl
            pcre
            perl(File::Find)
            perl(Getopt::Std)
            perl(IO::File)
            perl(strict)
            rpmlib(CompressedFileNames) <= 3.0.4-1
            rpmlib(PartialHardlinkSets) <= 4.0.4-1
            rpmlib(PayloadFilesHavePrefix) <= 4.0-1
            rtld(GNU_HASH)
            setup >= 2.5.36-1
            sh-utils
            textutils

            Show
            tomp Tom Parrott added a comment - Here is the output from rpm -qi --requires postfix: [root@tp ~] # rpm -qi --requires postfix Name : postfix Relocations: (not relocatable) Version : 2.3.3 Vendor: CentOS Release : 6.el5 Build Date: Wed 09 Jan 2013 04:42:39 UTC Install Date: Sat 23 Feb 2013 18:34:12 UTC Build Host: builder10.centos.org Group : System Environment/Daemons Source RPM: postfix-2.3.3-6.el5.src.rpm Size : 9651254 License: IBM Public License Signature : DSA/SHA1, Wed 09 Jan 2013 18:55:48 UTC, Key ID a8a447dce8562897 URL : http://www.postfix.org Summary : Postfix Mail Transport Agent Description : Postfix is a Mail Transport Agent (MTA), supporting LDAP, SMTP AUTH (SASL), TLS /bin/bash /bin/sh /bin/sh /bin/sh /bin/sh /bin/sh /sbin/chkconfig /sbin/service /usr/bin/perl /usr/sbin/alternatives /usr/sbin/groupadd /usr/sbin/useradd config(postfix) = 2:2.3.3-6.el5 cyrus-sasl >= 2.1.10 fileutils libc.so.6()(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3)(64bit) libc.so.6(GLIBC_2.3.4)(64bit) libc.so.6(GLIBC_2.4)(64bit) libcrypto.so.6()(64bit) libdb-4.3.so()(64bit) libdl.so.2()(64bit) liblber-2.3.so.0()(64bit) libldap-2.3.so.0()(64bit) libm.so.6()(64bit) libmysqlclient.so.15()(64bit) libmysqlclient.so.15(libmysqlclient_15)(64bit) libnsl.so.1()(64bit) libnsl.so.1(GLIBC_2.2.5)(64bit) libpcre.so.0()(64bit) libresolv.so.2()(64bit) libresolv.so.2(GLIBC_2.2.5)(64bit) libsasl2.so.2()(64bit) libssl.so.6()(64bit) libz.so.1()(64bit) mysql openldap >= 2.0.27 openssl pcre perl(File::Find) perl(Getopt::Std) perl(IO::File) perl(strict) rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PartialHardlinkSets) <= 4.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rtld(GNU_HASH) setup >= 2.5.36-1 sh-utils textutils
            Hide
            elenst Elena Stepanova added a comment -

            >> However when using MariaDB or Oracle RPMs the MariaDB-server package provides "mysql".

            If Oracle server RPM indeed provides "mysql", I suppose there isn't much we can do: if Oracle's server package provides mysql, so should MariaDB's, otherwise it won't be a proper replacement.

            However, as I can see, Oracle's RPM provides "MySQL", not "mysql", and the package names are case-sensitive, right?
            If so, possibly we could make our server RPM provide "MySQL" (as Oracle does), while the client or shared package would provide "mysql", as CentOS does. I'll leave it to Sergei to say whether it's possible and reasonable.

            Show
            elenst Elena Stepanova added a comment - >> However when using MariaDB or Oracle RPMs the MariaDB-server package provides "mysql". If Oracle server RPM indeed provides "mysql", I suppose there isn't much we can do: if Oracle's server package provides mysql, so should MariaDB's, otherwise it won't be a proper replacement. However, as I can see, Oracle's RPM provides "MySQL", not "mysql", and the package names are case-sensitive, right? If so, possibly we could make our server RPM provide "MySQL" (as Oracle does), while the client or shared package would provide "mysql", as CentOS does. I'll leave it to Sergei to say whether it's possible and reasonable.
            Hide
            tomp Tom Parrott added a comment - - edited

            Hi Elena,

            You are correct, infact Oracle's MySQL-server used to provide "mysql" until very recently, I think it changed either in 5.5.29 or 5.5.30, and now they only provide "MySQL" in the server package.

            Oracles approach has actually caused more problems in CentOS 5.9, as the package (for example) postfix that requires "mysql", will not pull in MySQL-client or MySQL-server, and instead installs the vanilla CentOS 5.9 mysql client package.

            This is fine until one tries to install the Oracle MySQL-client package on the same server and then you get conflicts because the packages share many of the same files. /usr/bin/mysql for example.

            Interestingly in CentOS 6 the postfix package only requires "mysql-libs" rather than "mysql", which means it can pull in MySQL-shared-compat or MariaDB-compat and avoid the whole server/client issue.

            I don't know why CentOS/Redhat decided to require "mysql" for postfix in 5.9 but it is causing a lot of problems when trying to using Oracle/MariaDB

            Show
            tomp Tom Parrott added a comment - - edited Hi Elena, You are correct, infact Oracle's MySQL-server used to provide "mysql" until very recently, I think it changed either in 5.5.29 or 5.5.30, and now they only provide "MySQL" in the server package. Oracles approach has actually caused more problems in CentOS 5.9, as the package (for example) postfix that requires "mysql", will not pull in MySQL-client or MySQL-server, and instead installs the vanilla CentOS 5.9 mysql client package. This is fine until one tries to install the Oracle MySQL-client package on the same server and then you get conflicts because the packages share many of the same files. /usr/bin/mysql for example. Interestingly in CentOS 6 the postfix package only requires "mysql-libs" rather than "mysql", which means it can pull in MySQL-shared-compat or MariaDB-compat and avoid the whole server/client issue. I don't know why CentOS/Redhat decided to require "mysql" for postfix in 5.9 but it is causing a lot of problems when trying to using Oracle/MariaDB
            Hide
            serg Sergei Golubchik added a comment -

            pushed in 5.5

            Show
            serg Sergei Golubchik added a comment - pushed in 5.5

              People

              • Assignee:
                serg Sergei Golubchik
                Reporter:
                tomp Tom Parrott
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 3 hours, 30 minutes
                  3h 30m