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;

如下图所示:

重新登录即可。

到此安装完毕。

相关推荐
爱丶狸6 小时前
Grafana_Zabbix_ImageRenderer_部署与前端操作手册
linux·前端·zabbix·grafana·kylin
k4m7v2pz7 小时前
把 Bevy 0.14 游戏移植到 R36S 掌机:一场与“无窗口系统“的搏斗
linux·rust·bevy·r36s·rk3326·开源掌机
木子欢儿8 小时前
Intel 架构的 MacBook Pro 运行 Linux 发热量高解决
linux·运维·服务器
凌虚8 小时前
面向 MySQL 用户的 PostgreSQL 快速上手指南
数据库·后端·架构
五阿哥永琪9 小时前
MySQL中操作json的函数!
数据库·mysql·json
来者皆善9 小时前
了解Mysql优化吗?如何优化索引?
数据库·mysql
赤壁小虾11 小时前
【渲染流水线】[逐片元阶段]-[透明度测试]以UnityURP为例
java·前端·数据库
MC皮蛋侠客11 小时前
SQLAlchemy 系列(七):高级建模与高效写入——批量 DML、方言与扩展
数据库·python
会编程的土豆11 小时前
Go 模板初识
linux·运维·服务器
奈斯先生Vector12 小时前
把 Midjourney 二次编辑做成生产系统:customId 能力令牌、Action Graph 与 WebUI 精修工作台
数据库·人工智能·架构·aigc·音视频·midjourney