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;

如下图所示:

重新登录即可。

到此安装完毕。

相关推荐
延凡科技1 小时前
延凡科技综合监控预警处置平台—— 一体化视频AI安防闭环系统设计与功能实现[特殊字符]️
数据库·人工智能·科技·安全·能源
醇氧2 小时前
主流 Agent 开发框架全解析(2026 最新)
大数据·数据库·人工智能·开源
吴声子夜歌2 小时前
Redis 6.x——整合SpringBoot
数据库·spring boot·redis
ATA88882 小时前
AI辅助生成SQL实战从连接配置到执行计划优化的完整技术流程
数据库·人工智能·智能问数
xinyu3912 小时前
旧版Ubuntu Docker镜像 apt 失败
linux·ubuntu·docker
咏方舟【长江支流】2 小时前
【开源】跨语言·跨平台·跨数据库(4) ——用宝框架 ORM 数据源适配器
数据库·开源·ai编程·orm·咏方舟-长江支流·用宝框架·用宝框架orm
JZC_xiaozhong2 小时前
OA调价审批后,采购调价单如何自动同步到ERP?解决漏录错价难题
大数据·linux·服务器·前端·数据库·数据孤岛解决方案·数据集成与应用集成
ljs6482739512 小时前
Linux 实用命令:环境变量、文件传输、压缩解压、跨服务器传文件
linux·运维·服务器
渣渣灰飞2 小时前
MySQL 系统学习 第五阶段:企业级 MySQL 实战开发 第一章:企业数据库设计规范
数据库·学习·mysql