为什么我不能卸载mysql-5.5&在Amazon Linux机器上安装mysql-5.6?

时间:2016-04-03 07:00:01

标签: mysql amazon-web-services mysql-5.6 mysql-5.5

我使用的是64位的亚马逊Linux机器。

我以前安装过mysql-server 5.5。 (使用sudo yum install) 但是,我很快发现我的应用程序需要MySql-serve 5.6。

所以我卸载了mysql-server 5.5。 (使用sudo yum remove mysql-server),现在我正在关注these instruction安装mysql-server 5.6。

但我遇到了一个问题。

当我尝试进行第二次安装时,我收到以下2个错误:

file /usr/lib64/mysql/libmysqlclient.so.18 from install of mysql-community-libs-5.6.14-3.el6.x86_64 conflicts with file from package mysql55-libs-5.5.46-1.10.amzn1.x86_64
file /etc/my.cnf from install of mysql-community-server-5.6.14-3.el6.x86_64 conflicts with file from package mysql-config-5.5.46-1.10.amzn1.x86_64

为什么我得到这两个错误?我该如何解决? 我删除了mysql-server-5.5,为什么它与5.6冲突?

我在ls/etc/my.cnf上做了/usr/lib64/mysql/libmysqlclient.so.18,文件甚至都不存在!!如果文件不存在,它们怎么会与其他文件冲突?谁能帮忙解释一下?

PS,我在这里尝试了@ msknapp的解释:Can't install MySQL 5.6 by RPM,但我不知道在步骤#1安装rpm后该怎么做。我认为这一步没有说明。

1 个答案:

答案 0 :(得分:1)

mysql-server(无论什么版本)依赖于其他软件包(在你的情况下是mysql-community-libs mysql-community-server)

当它安装在旧版本的第一个地方时,就会安装这个东西。当您“卸载”mysql-server时,不会删除这些依赖项。

当您尝试安装新版本时,这些仍然存在的软件包将与新软件包冲突。如果包中的实际文件在那里并不重要,那就是包和它列出的预期冲突的内容。

要解决您的问题,找出mysql-server的依赖关系,并在尝试安装之前卸载它们。

这个答案https://superuser.com/questions/294662/how-to-get-list-of-dependencies-of-non-installed-rpm-package可能对计算mysql-server所依赖的内容感兴趣