CentOS 7(3.10 内核)成功安装 MySQL 5.7 全流程实践(附问题总结)

CentOS 7(3.10 内核)成功安装 MySQL 5.7 全流程实践(附问题总结)

本文基于一次真实服务器环境的实践,完整记录在 CentOS 7(已 EOL) 系统上成功安装 MySQL 5.7 的全过程,并在最后统一总结踩坑与解决方案。


一、服务器环境

bash 复制代码
uname -a
text 复制代码
Linux bogon 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 GNU/Linux
  • 操作系统:CentOS 7.x(已停止维护)
  • 数据库版本:MySQL 5.7
  • 管理客户端:Navicat
  • 使用场景:Java 服务

二、MySQL 5.7 成功安装完整流程

1. 切换 CentOS 7 Vault 源(关键)

bash 复制代码
mv /etc/yum.repos.d /etc/yum.repos.d.bak
mkdir /etc/yum.repos.d
bash 复制代码
cat > /etc/yum.repos.d/CentOS-Base.repo << 'EOF'
[base]
name=CentOS-7 - Base
baseurl=http://vault.centos.org/7.9.2009/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

[updates]
name=CentOS-7 - Updates
baseurl=http://vault.centos.org/7.9.2009/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

[extras]
name=CentOS-7 - Extras
baseurl=http://vault.centos.org/7.9.2009/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
EOF
bash 复制代码
yum clean all
yum makecache

2. 安装 MySQL 官方仓库

bash 复制代码
rpm -Uvh https://repo.mysql.com/mysql57-community-release-el7-11.noarch.rpm

确认仓库已启用:

bash 复制代码
yum repolist all | grep mysql

3. 导入 MySQL 官方 GPG Key

bash 复制代码
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
bash 复制代码
yum clean all
rm -rf /var/cache/yum

4. 安装 MySQL Server

bash 复制代码
yum install -y mysql-community-server

5. 启动并设置开机自启

bash 复制代码
systemctl start mysqld
systemctl enable mysqld
systemctl status mysqld

6. 获取 root 初始密码

bash 复制代码
grep 'temporary password' /var/log/mysqld.log

7. 初始化 MySQL 安全配置

bash 复制代码
mysql_secure_installation

说明:

  • 默认启用 validate_password 插件
  • 密码需包含大小写字母、数字和特殊字符

示例:

text 复制代码
Mysql@1234

8. 创建远程访问用户(推荐)

bash 复制代码
mysql -uroot -p
sql 复制代码
CREATE DATABASE app_db DEFAULT CHARSET utf8mb4;
CREATE USER 'app_user'@'%' IDENTIFIED BY 'AppUser@123';
GRANT ALL PRIVILEGES ON app_db.* TO 'app_user'@'%';
FLUSH PRIVILEGES;

9. 开放 3306 端口

bash 复制代码
firewall-cmd --permanent --add-port=3306/tcp
firewall-cmd --reload

10. 客户端连接测试

  • Host:服务器 IP
  • Port:3306
  • User:app_user

✅ 至此安装完成


三、常见问题与踩坑总结

1. yum 源不可用


2. 找不到 mysql-community-server

  • 原因:repo 文件丢失或未启用
  • 解决:确认 mysql57-community enabled

3. GPG key 校验失败

  • 原因:MySQL 官方更换签名密钥
  • 解决:导入 RPM-GPG-KEY-mysql-2022

text 复制代码
1130 - Host 'x.x.x.x' is not allowed to connect
  • 原因:MySQL 使用 user@host 权限模型
  • 解决:创建允许远程登录的用户

四、总结

  • CentOS 7 必须使用 Vault 源
  • MySQL 5.7 在老系统上依然稳定
  • 避免长期使用 root@%
  • 生产环境应使用独立用户

完。

相关推荐
Cloud云卷云舒1 小时前
云卷云舒:从Oracle/MySQL迁移到HaishanDB:迁移评估工具核心技术拆解
mysql·oracle·ai-native·haishandb·信创数据库替换
HLC++1 小时前
Linux的进程间通信
android·linux·服务器
二宝哥2 小时前
CentOS 7.9 系统下 Redis 5.0.4 单机安装与源码编译安装指南
redis·centos
用户71333585156244 小时前
MySQL - 事务、redo/undo 日志与 MVCC
mysql
用户71333585156245 小时前
MySQL - InnoDB 的 Buffer Pool
mysql
groundhappy5 小时前
idalib安装和codex ida-mcp配置
linux·开发语言·python
通信小小昕6 小时前
Ubuntu 26.04 中文输入法安装
linux·运维·ubuntu
欲速不达88206 小时前
Mysql并发DML锁等待的优化
数据库·mysql
张小姐的猫7 小时前
【Linux】网络编程 —— HTTP协议(上)
linux·运维·服务器·网络·http·单例模式·策略模式
L1624767 小时前
MySQL 全环境生产快速安装 + 完整配置手册(整合国产银河麒麟适配 + 主从补充版)
数据库·mysql