在 CentOS 6.3 上安装 MySQL 5.6 出错

在 CentOS 6.3 上安装 MySQL 5.6 出错

我正在尝试使用 MySQL 提供的 .rpm 在 CentOS 6.3 64 位上安装 MySQL 5.6。我将所有 64 位 Linux rpm 下载到/usr/local/src/mysql并执行rpm -Uvh *

安装出现错误,我找不到错误消息。所以我尝试rpm -Uvh *再次安装,结果显示

Preparing...                ########################################### [100%]

package MySQL-devel-5.6.6_m9-1.linux2.6.x86_64 is already installed
package MySQL-embedded-5.6.6_m9-1.linux2.6.x86_64 is already installed
package MySQL-shared-compat-5.6.6_m9-1.linux2.6.x86_64 is already installed
package MySQL-shared-5.6.6_m9-1.linux2.6.x86_64 is already installed
package MySQL-client-5.6.6_m9-1.linux2.6.x86_64 is already installed

执行rpm -e MySQL*结果表明它们都没有安装:

error: package MySQL-client-5.6.6_m9-1.linux2.6.x86_64.rpm is not installed
error: package MySQL-devel-5.6.6_m9-1.linux2.6.x86_64.rpm is not installed
error: package MySQL-embedded-5.6.6_m9-1.linux2.6.x86_64.rpm is not installed
error: package MySQL-server-5.6.6_m9-1.linux2.6.x86_64.rpm is not installed
error: package MySQL-shared-5.6.6_m9-1.linux2.6.x86_64.rpm is not installed
error: package MySQL-shared-compat-5.6.6_m9-1.linux2.6.x86_64.rpm is not installed

/etc/init.d/mysql start我尝试使用和启动 mysql ,/etc/init.d/mysqld start但返回的错误是没有这样的文件或目录。

我尝试rpm --rebuilddb多次安装和删除但出现相同的错误。

我现在有点不知道下一步该怎么做。有什么建议吗?


更新

我设法通过卸载并重新安装 rpm 来安装 mysql。

现在当我尝试启动 mysql 时,

/etc/init.d/mysql start
Starting MySQL.The server quit without updating PID file (/[FAILED]mysql/localhost.localdomain.pid).`

我尝试过mv /etc/my.cnf /etc/my.cnf.bak/etc/init.d/mysql start但出现了同样的错误。

答案1

您是否启用了 SELinux?MySQL 软件包可能不是为与 SELinux 良好配合而构建的(第三方软件包中这种情况并不罕见),并且阻止了创建 PID 文件的权限。一个快速而粗略的测试是将您的 SELinux 上下文设置为 Permissive(或 Disabled)

# setenforce permissive

如果不是这种情况,那么请查看文件权限本身。

有关 SELinux 的更多信息:
适用于 RHEL6 的 Red Hat SELinux 文档
SELinux 项目维基

答案2

查询 rpmdb 使用包姓名,而不是包文件名. 您可以使用 从包文件中获取包名称rpm -qp --qf "%{name}\n" <file>

答案3

这些软件包可能已经安装,但如果它们是你从 mysql.com 下载的,那么实际的软件包名称都是小写的,即使文件名称是大小写混合的。

除此之外,mysql.com 软件包与 CentOS 的二进制兼容性并不 100%,而且还有许多其他问题可能会出现。如果你不完全需要5.6 那么最好使用来自可信赖的 repo(例如 remi)的 5.5,直到兼容软件包可用为止。

相关内容