惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
月光博客
月光博客
D
DataBreaches.Net
云风的 BLOG
云风的 BLOG
F
Fortinet All Blogs
T
The Blog of Author Tim Ferriss
Stack Overflow Blog
Stack Overflow Blog
Blog — PlanetScale
Blog — PlanetScale
aimingoo的专栏
aimingoo的专栏
U
Unit 42
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
MyScale Blog
MyScale Blog
T
Tailwind CSS Blog
N
Netflix TechBlog - Medium
B
Blog
博客园_首页
G
Google Developers Blog
Recent Announcements
Recent Announcements
博客园 - 【当耐特】
P
Proofpoint News Feed
博客园 - 司徒正美
Hugging Face - Blog
Hugging Face - Blog
MongoDB | Blog
MongoDB | Blog
Last Week in AI
Last Week in AI

博客园 - 李文学

Windows Server 2016 64位 ASP+Access(.mdb) 80004005 最简解决方案 Oracle查询表中指定库名,表约束名的上下表依赖关系 linux简版启动,关闭jar命令 Oracle11.2实例重启 主流数据库 “匹配更新、不匹配插入” 语法详解(Oracle/MSSQL/MySQL) Centos7扩容2 wps,两个页签比较常用函数 Oracle常见SQL示例 VUE-手机号验证 Centos7安装ffmpeg 不同数据库标识长度检查 Centos7重置网络 Centos7磁盘空间自动处理 Oracle11新建业务库账号信息 Java启动JAR,.sh版 linux常用命令 centos7防火墙IP白名单维护 centos7安装lamp,php5.6,mysql5.7,xdebug MSSQL最大内存设置
Centos7安装mysql8
李文学 · 2025-10-04 · via 博客园 - 李文学

本记录在Centos7下面,重新安装mysql8的全过程;

一、完全卸载 MySQL8

1.1 停止 MySQL 服务
systemctl stop mysqld
pkill mysqld


1.2 查找并删除所有 MySQL 相关包
# 查找所有 MySQL 相关的 RPM 包
rpm -qa | grep -i mysql

# 删除所有 MySQL 包
rpm -qa | grep -i mysql | xargs rpm -e --nodeps

# 查找并删除 MariaDB 相关包
rpm -qa | grep -i mariadb
rpm -qa | grep -i mariadb | xargs rpm -e --nodeps


1.3 彻底清理文件和目录
# 删除 MySQL 配置文件和数据目录
rm -rf /var/lib/mysql
rm -rf /etc/my.cnf
rm -rf /etc/my.cnf.d
rm -rf /var/log/mysqld.log

# 删除 MySQL 用户和组
userdel mysql
groupdel mysql

# 清理临时文件和缓存
rm -rf /tmp/mysql*
rm -rf /var/tmp/mysql*

1.4 删除 YUM 仓库配置和清理缓存
# 删除 MySQL 仓库文件
rm -rf /etc/yum.repos.d/mysql-community*
rm -rf /etc/yum.repos.d/mysql*

# 清理 YUM 缓存
yum clean all
rm -rf /var/cache/yum

二、重新安装 MySQL 8

2.1 下载并安装 MySQL 仓库

# 下载 MySQL 8 仓库配置
wget https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm

# 安装仓库
rpm -ivh mysql80-community-release-el7-7.noarch.rpm

2.2 安装 MySQL 8(跳过 GPG 检查)
# 安装 MySQL 服务器和客户端(跳过 GPG 验证)
yum install mysql-community-server mysql-community-client --nogpgcheck -y

2.3 备选安装命令(如果上面失败)
# 禁用 GPG 检查并安装
yum --nogpgcheck install mysql-community-server mysql-community-client -y

三、配置和启动 MySQL8

3.1 启动 MySQL 服务
# 启动服务
systemctl start mysqld

# 设置开机自启
systemctl enable mysqld

# 检查状态
systemctl status mysqld

3.2 获取初始密码
# 查看临时 root 密码
grep 'temporary password' /var/log/mysqld.log

3.3 安全配置
# 运行安全配置脚本
mysql_secure_installation

安全配置步骤:

输入上面查到的临时密码

设置新密码

移除匿名用户 (输入 Y)

禁止 root 远程登录 (输入 Y)

删除测试数据库 (输入 Y)

重新加载权限表 (输入 Y)

四、验证安装MySQL8

4.1 测试连接
# 使用新密码登录
mysql -u root -p

4.2 在 MySQL 中执行验证命令
-- 显示所有数据库
SHOW DATABASES;

-- 显示 MySQL 版本
SELECT VERSION();

-- 退出 MySQL
EXIT;

4.3 检查版本
mysql --version

五、一键清理和重装脚本

#!/bin/bash
echo "=== 开始完全重装 MySQL ==="

# 停止服务
echo "停止 MySQL 服务..."
systemctl stop mysqld 2>/dev/null
pkill mysqld 2>/dev/null

# 删除 RPM 包
echo "删除 MySQL 包..."
rpm -qa | grep -i mysql | xargs rpm -e --nodeps 2>/dev/null
rpm -qa | grep -i mariadb | xargs rpm -e --nodeps 2>/dev/null

# 清理文件
echo "清理文件和目录..."
rm -rf /var/lib/mysql
rm -rf /etc/my.cnf*
rm -rf /etc/my.cnf.d
rm -rf /var/log/mysqld*
rm -rf /tmp/mysql*
rm -rf /etc/yum.repos.d/mysql-community*

# 清理缓存
yum clean all

# 安装仓库
echo "安装 MySQL 仓库..."
wget -q https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm
rpm -ivh mysql80-community-release-el7-7.noarch.rpm

# 安装 MySQL
echo "安装 MySQL..."
yum install mysql-community-server mysql-community-client --nogpgcheck -y

# 启动服务
echo "启动 MySQL..."
systemctl start mysqld
systemctl enable mysqld

# 显示初始密码
echo "=== 安装完成 ==="
echo "初始密码:"
grep 'temporary password' /var/log/mysqld.log 2>/dev/null || echo "请查看 /var/log/mysqld.log 获取密码"

5.2 执行一键脚本


# 给脚本执行权限
chmod +x reinstall-mysql.sh

# 运行脚本
./reinstall-mysql.sh

六、故障排除

6.1 检查依赖
# 安装可能缺失的依赖
yum install libaio net-tools -y

6.2 检查防火墙设置
# 如果需要远程访问,开放 3306 端口
firewall-cmd --add-port=3306/tcp --permanent
firewall-cmd --reload

6.3 检查 SELinux 状态
# 临时禁用 SELinux
setenforce 0

# 查看 SELinux 状态
getenforce

七、重要注意事项

数据备份:在执行卸载前,请确保已备份重要数据

密码安全:安装完成后立即修改默认密码

网络连接:确保服务器可以访问互联网以下载安装包

权限问题:如果遇到权限问题,使用 chown 和 chmod 命令调整

服务状态:安装完成后确认 MySQL 服务正常运行

八、验证安装成功的标志

✅ systemctl status mysqld 显示 active (running)

✅ mysql --version 正确显示版本信息

✅ 可以使用 mysql -u root -p 成功登录

✅ 可以执行基本的 SQL 命令