我无法在 Centos7 上使用 yum 安装 MySQL

我无法在 Centos7 上使用 yum 安装 MySQL

我最近安装了centos7,但是,当我尝试MySQL使用以下命令安装时:

yum install mysql-community-server

当我没有按下任何键盘按钮时,我总是在用户取消时退出。这是输出:

install  2 Packages (+9 Dependent packages)
 Total size: 80 M Total download size: 79 M Is this ok [y/d/N]: y 
    Downloading packages: 
    No Presto metadata available for base No Presto metadata available for mysql56-community mysql-community-client-5.6.24-3.el7.x86_64.rpm |7.6 MB     00:32 ...  mysql-community-server-5.6.24-3.el7.x86_64.rpm        |  46MB     00:41 ...  mysql-community-libs-5.6.24-3.el7.x86_64.rpm      |    0 B     00:30 ...  (1/9): mysql-community-cli 0% [                ] 4.7 kB/s | 159 kB  283:33 ETA 

    Exiting on user cancel

问题是什么?为什么我无法安装它?解决办法是什么?

注意:我的 yum 有以下插件:fastmirror、axelget、langpacks。

答案1

尝试清洁yum

yum clean all

希望你已经做到了这一点:

/etc/yum.repos.d/mysql-community.repo使用所需版本创建一个新文件。

对于 5.7,添加以下行:

[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

对于 5.6,添加以下行:

[mysql56-community]
name=MySQL 5.6 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

(用于.../el/6/...CentOS 6)

然后尝试以下命令:

yum install mysql-community-server

答案2

MariaDB 是 MySQL 的一个分支。 RedHat Enterprise Linux 及其衍生产品已从 MySQL 转向 MariaDB。所以你可以使用这个命令在CentOS7上安装mariadb-server yum install mariadb-server mariadb。这是一个很好的分步教程,如何在第 8 页中做到这一点安装 MariaDB 数据库或者你可以使用这个来源Mariadb 一步一步

答案3

尝试$sudo yum update

那么如果你正确配置镜像,它将更新包数据库。

尝试再次安装 mysql 使用$sudo yum install mysql-community-server

如果你没有安装 sudo 那么$su

并安装 sudo#yum install sudo

答案4

问题是yum由于一个错误而给你带来了错误的错误。要解决它并查看真正的错误,您需要应用我发现的此修复这里

yum 使用的 python-urlgrabber 中存在一个错误,导致生成错误的错误。在 el7 beta 期间就注意到并报告了这一问题,但似乎尚未修复。问题是您正在连接的镜像正在中断连接,并且 yum 当前将其视为错误并终止,而不是尝试另一个镜像。

如果您不介意编辑属于 的文件,rpm 那么您可以修复此问题或至少减轻其影响。编辑 /usr/lib/python2.7/site-packages/urlgrabber/grabber.py并找到第 1510 行,其中当前显示:

python CODE: SELECT ALL elif errcode in (42, 55, 56):

并将其改回之前的样子

python CODE: SELECT ALL elif errcode == 42:

相关内容