在 CentOS 上“装不了 MySQL”是很常见的问题,通常不是 MySQL 本身有问题,而是系统机制/源/依赖/冲突导致的。下面按最常见原因 → 对应解决办法给你梳理。
yum install mysql
装出来的其实是 MariaDB,不是 Oracle MySQL。
CentOS 官方源里 没有 MySQL,只有 MariaDB(MySQL 的分支)。
✅ 用 MySQL 官方源
# CentOS 7 示例
rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-11.noarch.rpm
yum install mysql-community-server
file /usr/bin/mysql from install of ...
conflicts with file from package mariadb-*
系统已经装了 mariadb / mariadb-libs,和 MySQL 冲突。
yum remove mariadb mariadb-libs mariadb-server
然后再装 MySQL。
⚠️ 注意:会删数据库文件,生产环境谨慎
Error: Failed to download metadata for repo 'baseos'
CentOS 8 已 EOL,官方源不可用。
迁移到 Alma / Rocky / CentOS Stream
换 vault 源:
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
GPG key retrieval failed
yum install -y epel-release
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql
或临时跳过(不推荐):
yum install mysql-community-server --nogpgcheck
systemctl status mysqld
journalctl -xe
你可以把下面信息发我,我直接帮你定位:
cat /etc/centos-release
yum list installed | grep -E 'mysql|mariadb'
CentOS 装不了 MySQL,99% 是因为:没用 MySQL 官方源 / MariaDB 冲突 / CentOS 8 源挂了
如果你愿意,可以直接把报错完整贴出来,我可以一步一步帮你装好。