Rocky Linux 9.0 安装 MySQL8.x详细教程

1.安装 MySQL 官方 Yum 源

下载 MySQL 8.0 仓库 RPM:

bash 复制代码
cd /opt

wget https://dev.mysql.com/get/mysql80-community-release-el9-1.noarch.rpm

安装:

bash 复制代码
dnf install mysql80-community-release-el9-1.noarch.rpm -y

检查仓库:

bash 复制代码
dnf repolist | grep mysql

如下图所示:

  1. MySQL 8.0.46 使用了新的 GPG key,Rocky 9 缓存了旧 key,得删除掉

2.1 删除旧 MySQL key

查看:

bash 复制代码
rpm -qa gpg-pubkey*

找到如下,例如:

gpg-pubkey-3a79bd29-xxxx

删除:

bash 复制代码
rpm -e gpg-pubkey-3a79bd29-xxxx

注意:gpg-pubkey-3a79bd29-xxxx,是你自己的

2.2 导入新的 MySQL key

bash 复制代码
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql


rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2023

2.3 清理 dnf 缓存

bash 复制代码
dnf clean all
rm -rf /var/cache/dnf

2.4 安装

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

2.5 查看安装的版本

bash 复制代码
mysql --version

3.启动服务

3.1 启动mysql 服务

bash 复制代码
systemctl start mysqld

3.2 设置开机启动:

bash 复制代码
systemctl enable mysqld

3.3 查看状态:

bash 复制代码
systemctl status mysqld
  1. 获取 MySQL 临时 root 密码

MySQL 8 初始化会生成随机密码

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

内容如下:

2026-07-13T08:58:57.396996Z 6 Note MY-010454 Server A temporary password is generated for root@localhost: .0qbp,.a>l8N

可以看到:localhost: 后面的是密码

5.初始化安全配置

bash 复制代码
mysql_secure_installation

输入上面的临时密码,并且设置新的密码:

注意:MySQL 8 默认密码策略较强,密码例如:Mysql@123456

再输入密码之后,会有一系列的操作,例如:

5.1 删除匿名用户

Remove anonymous users? =》y

5.2 禁止 root 远程登录

Disallow root login remotely? =》N

5.3 删除测试库

Remove test database? =》Y

6.登录测试

bash 复制代码
mysql -uroot -p

7.配置远程访问

vim /etc/my.cnf

bash 复制代码
[mysqld]

bind-address=0.0.0.0

保存,重启。

bash 复制代码
systemctl restart mysqld

再次重新登录,访问即可

8.登录密码太繁琐,可以简化密码设置

MySQL 8 的密码策略限制可以降低。

8.1 登录mysql数据库

mysql -uroot -p

8.2 查看当前策略:

bash 复制代码
SHOW VARIABLES LIKE 'validate_password%';

如下图所示:

改成 LOW

bash 复制代码
SET GLOBAL validate_password.policy=LOW;

然后降低长度:

bash 复制代码
SET GLOBAL validate_password.length=6;

设置密码:

bash 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

退出mysql,重新登录即可。

9.修改 root用户的远程访问

复制代码
use mysql;

select User,host from user;

update user set host='%' where User='root';

flush privileges;

select User,host from user;

如下图所示:

重新登录即可。

到此安装完毕。

相关推荐
隔窗听雨眠几秒前
当KES遇到多租户:金仓数据库多租户架构的隔离实践与部署指南
数据库·架构
祖力559 分钟前
Linux应用软件编程:目录IO与framebuffer
linux·运维·算法·framebuffer·目录io
JOker_Chu_20 分钟前
知识图谱详解:从图结构、关系建模到查询与应用
数据库·知识图谱·database·neo4j
tryCbest29 分钟前
搭建企业知识库之Milvus 向量数据库
数据库·milvus
词却32 分钟前
Linux基础:常用基本命令与软件包管理
linux
czhc114007566344 分钟前
2026-08-24 博客:几个让你少踩坑的概念
数据库
2401_890603401 小时前
Linux 进程控制
linux·运维·服务器
ACP广源盛139246256731 小时前
Qwen3.8‑2.4T 开源落地@ACP#国产 Serdes 长距离视频传输芯片 GSV5800 在私有化 AI 服务中的价值与应用场景
大数据·数据库·人工智能·嵌入式硬件·矩阵·开源·音视频
oradh2 小时前
Oracle RMAN备份脚本、RMAN还原恢复测试、RMAN常用语句
数据库·oracle·rman备份脚本·rman还原恢复测试·rman常用语句
汽车仪器仪表相关领域2 小时前
ZDT‑I伺服电机测试系统:四象限动态加载
大数据·数据库·分布式·功能测试·汽车·压力测试·可用性测试