我有一个使用 MariaDB 5.5.52 的数据库服务器:
[root@sql01 ~]# yum list installed|grep 5.5.52-1.el7
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
mariadb.x86_64 1:5.5.52-1.el7 @base
mariadb-libs.x86_64 1:5.5.52-1.el7 @CentOS
mariadb-server.x86_64 1:5.5.52-1.el7 @base
[root@sql01 ~]# mysql -V
mysql Ver 15.1 Distrib 5.5.52-MariaDB, for Linux (x86_64) using readline 5.1
我需要在新服务器上安装完全相同的版本,但对于新安装,MariaDB 作为 MariaDB 5.5.59 提供。所以,我得到了一个 RPM 并按如下方式安装它:
wget http://ftp.hosteurope.de/mirror/archive.mariadb.org/mariadb-5.5.52/yum/centos7-amd64/rpms/MariaDB-5.5.52-centos7-x86_64-server.rpm
yum install MariaDB-5.5.52-centos7-x86_64-server.rpm
尽管这是 5.5.52 的 RPM,但仍安装了 5.5.59:
[root@db01 ~]# yum list installed|grep 5.5.52-1.el7
MariaDB-server.x86_64 5.5.52-1.el7.centos installed
[root@db01 ~]# mysql -V
mysql Ver 15.1 Distrib 5.5.59-MariaDB, for Linux (x86_64) using readline 5.1
知道为什么要安装 5.5.59 吗?
更有趣的输出:
[root@db01 ~]# rpm -qf `which mysql`
MariaDB-client-5.5.59-1.el7.centos.x86_64
[root@db01 ~]# rpm -qa | fgrep 5.5.59
MariaDB-client-5.5.59-1.el7.centos.x86_64
MariaDB-common-5.5.59-1.el7.centos.x86_64
答案1
查看请求命令的输出后,您似乎已经
MariaDB-client-5.5.59-1.el7.centos.x86_64 and
MariaDB-common-5.5.59-1.el7.centos.x86_64
已安装,您需要降级。如何执行此操作取决于您的系统,但请尝试
yum downgrade MariaDB-client-5.5.52-1 MariaDB-common-5.5.52-1
如果这不起作用,请尝试删除这些软件包(我假设您以后可以随时恢复它们)并重新安装其他软件包:
rpm -e MariaDB-client-5.5.59-1 MariaDB-common-5.5.59-1
进而
yum reinstall mariadb
(可能还有其他两个,请告诉我们)