Linux-centOS Stream 9 系统 mysql-8.4.7 RPM版本

安装前部署

确认文件路径与存在性

首先检查当前目录是否存在目标 RPM 文件

shell 复制代码
ls -l mysql84-community-release-el9-1.noarch.rpm

如果提示 No such file or directory,说明文件不在当前工作目录。需提供 完整绝对路径(例如 /home/yourname/Downloads/mysql84-community-release-el9-1.noarch.rpm),或切换到文件所在目录后重试

重新下载完整的 RPM 文件

如果文件已损坏(如下载中断),需从 MySQL 官方源重新获取

bash 复制代码
# 下载适用于 EL9(CentOS Stream 9)的 MySQL 社区版仓库配置包
wget https://dev.mysql.com/get/mysql84-community-release-el9-1.noarch.rpm
复制代码
Resolving dev.mysql.com (dev.mysql.com)... 104.103.249.89, 2600:140b:1a00:3ad::2e31, 2600:140b:1a00:39c::2e31
Connecting to dev.mysql.com (dev.mysql.com)|104.103.249.89|:443... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: https://repo.mysql.com//mysql84-community-release-el9-1.noarch.rpm [following]
--2026-01-09 14:36:51--  https://repo.mysql.com//mysql84-community-release-el9-1.noarch.rpm
Resolving repo.mysql.com (repo.mysql.com)... 23.60.218.23, 2600:1406:5400:492::1d68, 2600:1406:5400:4a8::1d68
Connecting to repo.mysql.com (repo.mysql.com)|23.60.218.23|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 13139 (13K) [application/x-redhat-package-manager]
Saving to: 'mysql84-community-release-el9-1.noarch.rpm'

mysql84-community-re 100%[======================>]  12.83K  --.-KB/s    in 0s      

2026-01-09 14:36:52 (226 MB/s) - 'mysql84-community-release-el9-1.noarch.rpm' saved [13139/13139]

注意:若未安装 wget,可先执行

复制代码
sudo dnf install wget

检查文件权限

确保当前用户对文件有读取权限

bash 复制代码
chmod +r mysql84-community-release-el9-1.noarch.rpm

创建mysql-file

shell 复制代码
# 创建 mysql-file
mkdir /your/path/mysql-file/

将 mysql84-community-release-el9-1.noarch.rpm 移动到 mysql-file

shell 复制代码
mv  mysql84-community-release-el9-1.noarch.rpm /your/path/mysql-file/

安装 mysql

以下安装可以根据官网安装

本地安装 mysql

shell 复制代码
# centos stream 9 的下载方式为dnf当然也可以使用yum如果yum可以使用的情况下
sudo dnf localinstall /home/itcat/mysql-file/mysql84-community-release-el9-1.noarch.rpm

控制台输出

复制代码
CentOS Stream 9 - BaseOS                            8.8 kB/s | 4.2 kB     00:00    
CentOS Stream 9 - BaseOS                            5.2 MB/s | 8.8 MB     00:01    
CentOS Stream 9 - AppStream                         6.4 kB/s | 4.2 kB     00:00    
CentOS Stream 9 - AppStream                         3.1 MB/s |  26 MB     00:08    
CentOS Stream 9 - Extras packages                   6.1 kB/s | 5.2 kB     00:00    
Dependencies resolved.
====================================================================================
 Package                         Architecture Version      Repository          Size
====================================================================================
Installing:
 mysql84-community-release       noarch       el9-1        @commandline        13 k

Transaction Summary
====================================================================================
Install  1 Package

Total size: 13 k
Installed size: 14 k
Is this ok [y/N]: y
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                            1/1 
  Installing       : mysql84-community-release-el9-1.noarch                     1/1 
  Verifying        : mysql84-community-release-el9-1.noarch                     1/1 

Installed:
  mysql84-community-release-el9-1.noarch                                            

Complete!

检查 MySQL Yum 仓库是否已成功添加并启用(对于支持 dnf 的系统,请在命令中将 yum 替换为 dnf)

shell 复制代码
dnf repolist enabled | grep mysql.*-community

控制台输出

复制代码
mysql-8.4-lts-community               MySQL 8.4 LTS Community Server
mysql-connectors-community            MySQL Connectors Community
mysql-tools-8.4-lts-community         MySQL Tools 8.4 LTS Community

选择发行版系列

使用 MySQL Yum 仓库时,最新的错误修复系列(当前为 MySQL 8.4)默认情况下被选中用于安装。如果您想要这个,您可以跳到下一步 安装 MySQL。

在 MySQL Yum 仓库中,每个 MySQL Community Server 发行版系列都托管在不同的子仓库中。最新 LTS 系列(当前为 MySQL 8.4)的子仓库默认情况下处于启用状态,所有其他系列的子仓库(例如 MySQL 8.0 和 MySQL Innovation 系列)默认情况下处于禁用状态。使用以下命令查看所有可用的 MySQL 相关子仓库(对于支持 dnf 的系统,请在命令中将 yum 替换为 dnf)

shell 复制代码
dnf repolist all | grep mysql

控制台输出

复制代码
mysql-8.4-lts-community                      MySQL 8.4 LTS Community Se enabled
mysql-8.4-lts-community-debuginfo            MySQL 8.4 LTS Community Se disabled
mysql-8.4-lts-community-source               MySQL 8.4 LTS Community Se disabled
mysql-cluster-8.0-community                  MySQL Cluster 8.0 Communit disabled
mysql-cluster-8.0-community-debuginfo        MySQL Cluster 8.0 Communit disabled
mysql-cluster-8.0-community-source           MySQL Cluster 8.0 Communit disabled
mysql-cluster-8.4-lts-community              MySQL Cluster 8.4 LTS Comm disabled
mysql-cluster-8.4-lts-community-debuginfo    MySQL Cluster 8.4 LTS Comm disabled
mysql-cluster-8.4-lts-community-source       MySQL Cluster 8.4 LTS Comm disabled
mysql-cluster-innovation-community           MySQL Cluster Innovation R disabled
mysql-cluster-innovation-community-debuginfo MySQL Cluster Innovation R disabled
mysql-cluster-innovation-community-source    MySQL Cluster Innovation R disabled
mysql-connectors-community                   MySQL Connectors Community enabled
mysql-connectors-community-debuginfo         MySQL Connectors Community disabled
mysql-connectors-community-source            MySQL Connectors Community disabled
mysql-innovation-community                   MySQL Innovation Release C disabled
mysql-innovation-community-debuginfo         MySQL Innovation Release C disabled
mysql-innovation-community-source            MySQL Innovation Release C disabled
mysql-tools-8.4-lts-community                MySQL Tools 8.4 LTS Commun enabled
mysql-tools-8.4-lts-community-debuginfo      MySQL Tools 8.4 LTS Commun disabled
mysql-tools-8.4-lts-community-source         MySQL Tools 8.4 LTS Commun disabled
mysql-tools-community                        MySQL Tools Community      disabled
mysql-tools-community-debuginfo              MySQL Tools Community - De disabled
mysql-tools-community-source                 MySQL Tools Community - So disabled
mysql-tools-innovation-community             MySQL Tools Innovation Com disabled
mysql-tools-innovation-community-debuginfo   MySQL Tools Innovation Com disabled
mysql-tools-innovation-community-source      MySQL Tools Innovation Com disabled
mysql80-community                            MySQL 8.0 Community Server disabled
mysql80-community-debuginfo                  MySQL 8.0 Community Server disabled
mysql80-community-source                     MySQL 8.0 Community Server disabled

要从除最新 LTS 系列之外的特定系列安装最新发行版,请在运行安装命令之前,禁用最新 LTS 系列的错误修复子仓库并启用特定系列的子仓库。如果您的平台支持 yum-config-manager 或 dnf config-manager 命令,您可以通过发出以下命令来禁用 8.4 系列的子仓库并启用 8.0 系列的子仓库
小白认为是脱裤子。。。。多此一举,哈哈哈!当然这是给有需要的人的

shell 复制代码
sudo dnf config-manager --disable mysql-8.4-lts-community
sudo dnf config-manager --enable mysql80-community

除了使用 config-manager 命令外,您还可以通过切换 enabled 选项来手动编辑 /etc/yum.repos.d/mysql-community.repo 文件。例如,EL9 的典型默认条目

shell 复制代码
[mysql-8.4-lts-community]
name=MySQL 8.4 LTS Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.4-community/el/9/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2023

找到要配置的子仓库的条目并编辑 enabled 选项。指定 enabled=0 禁用子仓库或 enabled=1 启用子仓库。例如,要从 MySQL 创新轨迹安装,请确保 MySQL 8.4 子仓库条目的 enabled=0,并且创新条目的 enabled=1

shell 复制代码
[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/9/$basearch
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2023

您应该始终只为一个发行系列启用子仓库。

启用子仓库

shell 复制代码
dnf repolist enabled | grep mysql

开始安装mysql

使用以下命令安装 MySQL(对于支持 dnf 的系统,请将命令中的 yum 替换为 dnf)。

shell 复制代码
sudo yum install mysql-community-server

这将安装 MySQL 服务器的软件包 (mysql-community-server),以及运行服务器所需的组件软件包,包括客户端软件包 (mysql-community-client)、客户端和服务器的通用错误消息和字符集 (mysql-community-common) 以及共享客户端库 (mysql-community-libs)。

启动 MySQL 服务器

使用以下命令启动 MySQL 服务器。

shell 复制代码
systemctl start mysqld

您可以使用以下命令检查 MySQL 服务器的状态。

shell 复制代码
systemctl status mysqld

如果操作系统启用了 systemd,则应使用标准的 systemctl(或者,使用参数反转的 service)命令,例如 stop、start、status 和 restart 来管理 MySQL 服务器服务。默认情况下,mysqld 服务已启用,并且会在系统重启时启动。

查看临时密码

在服务器的首次启动时,如果服务器的数据目录为空,将会发生以下情况。

服务器将被初始化。

SSL 证书和密钥文件将在数据目录中生成。

validate_password 将被安装并启用。

将创建一个超级用户帐户 'root'@'localhost。超级用户的密码将被设置并存储在错误日志文件中。要查看它,请使用以下命令。

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

控制面板输出

复制代码
2026-01-09T07:28:07.199886Z 6 [Note] [MY-010454] [Server] A temporary password is generated 
for root@localhost: '这个地方显示临时密码'

使用临时密码登录

shell 复制代码
# 密码是上面root@localhost:'这个地方显示临时密码' 的密码《输入密码时不显示勿惊!》
mysql -u root -p 

修改密码

shell 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';

注意 validate_password 默认情况下已安装。由 validate_password 实施的默认密码策略要求密码至少包含一个大写字母、一个小写字母、一个数字和一个特殊字符,并且总密码长度至少为 8 个字符。

重新登录

小白就直接写登录命令了,

shell 复制代码
mysql -u root -p # [回车]
# 输入密码

异地访问

mysql默认本地连接访问,不允许外地访问 '%' ip address

sql 复制代码
use mysql
sql 复制代码
update user set host='%' where user='root';
sql 复制代码
flush privileges;

现在安装包使用.tar.xz包安装太费劲了,主要是服务注入过程,已经没有相关文章了,小白也是不得已才使用rpm的,没灵魂了。

相关推荐
秋风未动蝉已先觉17 小时前
CentOs服务器 systemctl执行权限授权给普通权限work用户
linux·服务器
程序员zgh17 小时前
Linux 系统调用
linux·运维·服务器·c语言·c++·系统安全
Stuomasi_xiaoxin17 小时前
ROS2介绍,及ubuntu22.04 安装ROS 2部署使用!
linux·人工智能·深度学习·ubuntu
带土117 小时前
2. Linux下FFmpeg C++音视频解码+推流开发
linux·c++·ffmpeg
zhanglb1217 小时前
Linux -kylin麒麟系统安装openSSH
linux·apache kylin
zhanglb1217 小时前
Linux-麒麟系统安装内网穿透工具
linux·apache kylin
飞凌嵌入式17 小时前
解析一下面向教育领域的RV1126B\RK3506B\RK3576开发板
linux·人工智能
Xの哲學17 小时前
Linux io_uring 深度剖析: 重新定义高性能I/O的架构革命
linux·服务器·网络·算法·边缘计算
菜择贰18 小时前
在linux(wayland)中禁用键盘
linux·运维·chrome