CentOS Stream release 9安装 MySQL(一)

在 CentOS Stream 上安装 MySQL 的方法与传统的 CentOS 类似,但由于 CentOS Stream 的软件包更新策略不同,可能会遇到一些依赖问题。以下是详细安装步骤:

1. 添加 MySQL 官方 Yum 仓库

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

注意

  • 如果是 CentOS Stream 8,使用 el8 版本:

    sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el8-4.noarch.rpm
  • 如果是 CentOS Stream 9,使用 el9 版本(如上)。


2. 检查可用的 MySQL 版本

sudo dnf module list mysql

如果默认启用的是 MySQL 8.0,可以直接安装。如果需要 MySQL 5.7(不推荐,即将停止支持),可以禁用 8.0 并启用 5.7:

sudo dnf config-manager --disable mysql80-community
sudo dnf config-manager --enable mysql57-community

3. 安装 MySQL Server

sudo dnf install mysql-community-server

 如果遇到依赖问题(如 libssl 或 libcrypto 缺失),可以尝试:

sudo dnf install openssl

或手动安装兼容版本:

sudo dnf install openssl1.1
在运行sudo dnf install mysql-community-server命令时报错
MySQL 8.0 Community Server                                                                                                                                                                                                                                                                                    3.0 MB/s | 3.1 kB     00:00    
GPG key at file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022 (0x3A79BD29) is already installed
The GPG keys listed for the "MySQL 8.0 Community Server" repository are already installed but they are not correct for this package.
Check that the correct key URLs are configured for this repository.. Failing package is: mysql-community-client-8.0.41-1.el9.x86_64GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022
Public key for mysql-community-client-plugins-8.0.41-1.el9.x86_64.rpm is not installed. Failing package is: mysql-community-client-plugins-8.0.41-1.el9.x86_64GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022
Public key for mysql-community-common-8.0.41-1.el9.x86_64.rpm is not installed. Failing package is: mysql-community-common-8.0.41-1.el9.x86_64GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022
Public key for mysql-community-icu-data-files-8.0.41-1.el9.x86_64.rpm is not installed. Failing package is: mysql-community-icu-data-files-8.0.41-1.el9.x86_64GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022
Public key for mysql-community-libs-8.0.41-1.el9.x86_64.rpm is not installed. Failing package is: mysql-community-libs-8.0.41-1.el9.x86_64GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022
Public key for mysql-community-server-8.0.41-1.el9.x86_64.rpm is not installed. Failing package is: mysql-community-server-8.0.41-1.el9.x86_64GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'dnf clean packages'.
Error: GPG check FAILED

这个错误是因为 MySQL 的 GPG 密钥验证失败(因为我之前安装了别的版本),导致无法安装软件包。错误信息表明:

  1. GPG 密钥已安装,但不匹配The GPG keys listed for the "MySQL 8.0 Community Server" repository are already installed but they are not correct for this package)。

  2. 部分软件包的公共密钥未安装Public key for mysql-community-xxx is not installed)。


解决方案:重新导入正确的 MySQL GPG 密钥
1. 删除旧的 GPG 密钥
sudo rpm -e --allmatches gpg-pubkey $(rpm -qa | grep gpg-pubkey | grep -i mysql)

这会移除所有与 MySQL 相关的旧 GPG 密钥。

2. 重新下载并导入最新的 MySQL GPG 密钥
sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2023

注意

  • 如果 2023 版本的密钥仍然有问题,可以尝试 2022

    sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
3. 清理缓存并重新安装
sudo dnf clean all
sudo dnf install mysql-community-server

4. 启动 MySQL 并设置开机自启

sudo systemctl start mysqld
sudo systemctl enable mysqld

5. 获取临时 root 密码

sudo grep 'temporary password' /var/log/mysqld.log

输出类似:

2023-01-01T12:00:00.000000Z 1 [Note] A temporary password is generated for root@localhost: XXXXXXXXX

6. 运行安全配置向导

sudo mysql_secure_installation

按照提示:

  1. 输入临时密码。

  2. 设置新密码(需符合 MySQL 密码策略)。

  3. 移除匿名用户?Y

  4. 禁止 root 远程登录?Y

  5. 删除测试数据库?Y

  6. 重新加载权限表?Y

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/75259.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构 | 证明链表环结构是否存在

❤个人主页: 链表环结构 0.前言1.环形链表(基础)2.环形链表Ⅱ(中等)3.证明相遇条件及结论3.1 问题1特殊情况证明3.2 问题1普适性证明 0.前言 在这篇博客中,我们将深入探讨链表环结构的检测方法:…

数字世界的免疫系统:恶意流量检测如何守护网络安全

在2023年全球网络安全威胁报告中,某跨国电商平台每秒拦截的恶意请求峰值达到217万次,这个数字背后是无数黑客精心设计的自动化攻击脚本。恶意流量如同数字世界的埃博拉病毒,正在以指数级速度进化,传统安全防线频频失守。这场没有硝烟的战争中,恶意流量检测技术已成为守护网…

【JavaScript】十八、页面加载事件和页面滚动事件

文章目录 1、页面加载事件1.1 load1.2 DOMContentLoaded 2、页面滚动事件2.1 语法2.2 获取滚动位置 3、案例&#xff1a;页面滚动显示隐藏侧边栏 1、页面加载事件 script标签在html中的位置一般在</body>标签上方&#xff0c;这是因为代码从上往下执行&#xff0c;在htm…

Linux : 内核中的信号捕捉

目录 一 前言 二 信号捕捉的方法 1.sigaction()​编辑 2. sigaction() 使用 三 可重入函数 四 volatile 关键字 一 前言 如果信号的处理动作是用户自定义函数,在信号递达时就调用这个函数,这称为捕捉信号。在Linux: 进程信号初识-CSDN博客 这一篇中已经学习到了一种信号…

分布式id生成算法(雪花算法 VS 步长id生成)

分布式ID生成方案详解:雪花算法 vs 步长ID 一、核心需求 全局唯一性:集群中绝不重复有序性:有利于数据库索引性能高可用:每秒至少生成数万ID低延迟:生成耗时<1ms二、雪花算法(Snowflake) 1. 数据结构(64位) 0 | 0000000000 0000000000 0000000000 0000000000 0 |…

函数式编程在 Java:Function、BiFunction、UnaryOperator 你真的会用?

大家好&#xff0c;我是你们的Java技术博主&#xff01;今天我们要深入探讨Java函数式编程中的几个核心接口&#xff1a;Function、BiFunction和UnaryOperator。很多同学虽然知道它们的存在&#xff0c;但真正用起来却总是不得要领。这篇文章将带你彻底掌握它们&#xff01;&am…

x265 编码器中运动搜索 ME 方法对比实验

介绍 x265 的运动搜索方法一共有 6 种方法,分别是 DIA、HEX、UMH、STAR、SEA、FULL。typedef enum {X265_DIA_SEARCH,X265_HEX_SEARCH,X265_UMH_SEARCH,X265_STAR_SEARCH,X265_SEA,X265_FULL_SEARCH } X265_ME_METHODS;GitHub

2025.4.8 dmy NOI模拟赛总结(转化贡献方式 dp, 交互(分段函数找断点),SAM上计数)

文章目录 时间安排题解T1.搬箱子(dp&#xff0c;转化贡献方式)T2.很多线。(分段函数找断点)T3.很多串。(SAM&#xff0c; 计数) 时间安排 先写了 T 3 T3 T3 60 p t s 60pts 60pts&#xff0c;然后剩下 2.5 h 2.5h 2.5h 没有战胜 T 1 T1 T1 40 p t s 40pts 40pts。 总得分…

ZYNQ笔记(四):AXI GPIO

版本&#xff1a;Vivado2020.2&#xff08;Vitis&#xff09; 任务&#xff1a;使用 AXI GPIO IP 核实现按键 KEY 控制 LED 亮灭&#xff08;两个都在PL端&#xff09; 一、介绍 AXI GPIO (Advanced eXtensible Interface General Purpose Input/Output) 是 Xilinx 提供的一个可…

CSP认证准备第二天-第36/37次CCF认证

第37次CCF认证-第三题 主要是间接赋值比较难。 自己编写的代码如下&#xff0c;但是有问题&#xff0c;没有解决间接赋值的问题&#xff0c;可以参考一下deepseek的回答。 #include <iostream> #include <bits/stdc.h> using namespace std; long long n,x; char …

Kotlin与HttpClient编写视频爬虫

想用Apache HttpClient库和Kotlin语言写一个视频爬虫。首先&#xff0c;我需要确定用户的具体需求。视频爬虫通常涉及发送HTTP请求&#xff0c;解析网页内容&#xff0c;提取视频链接&#xff0c;然后下载视频。可能需要处理不同的网站结构&#xff0c;甚至可能需要处理动态加载…

FFMEPG常见命令查询

基本参数 表格1&#xff1a;主要参数 参数说明-i设定输入流-f设定输出格式(format) 高于后缀名-ss开始时间-t时间长度codec编解码 表格2&#xff1a;音频参数 参数说明-aframes设置要输出的音频帧数-f音频帧深度-b:a音频码率-ar设定采样率-ac设定声音的Channel数-acodec设定…

Java-对比两组对象找出发生变化的字段工具-支持枚举映射-支持时间-支持显示对应字段中文描述-嵌套list等场景

实体字段比较器&#xff08;对比两组对象找出发生变化的字段工具类开发&#xff09; 支持枚举映射 支持时间 支持显示对应字段中文描述 支持嵌套list等场景 下载地址&#xff1a; Java-对比两组对象找出发生变化的字段工具-支持枚举映射-支持时间-支持显示对应字段中文描述-嵌…

15. git push

基本概述 git push 的作用是&#xff1a;把本地分支的提交推送到远程仓库。推送分支需要满足快进规则&#xff08;Fast-Forward&#xff09;&#xff0c;即远程分支的最新提交必须是本地分支的直接祖先&#xff0c;这个是通过哈希值值进行判断的。 基本用法 1.完整格式 git…

训练数据清洗(文本/音频/视频)

多数据格式的清洗方法 以下是针对多数据格式清洗方法的系统性总结&#xff0c;结合Python代码示例&#xff1a; 一、数据清洗方法总览&#xff08;表格对比&#xff09; 数据类型核心挑战关键步骤常用Python工具文本非结构化噪声去噪→分词→标准化→向量化NLTK, SpaCy, Jie…

Python标准库json完全指南:高效处理JSON数据

一、json库概述 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式&#xff0c;Python的json模块提供了JSON数据的编码和解码功能。该模块可以将Python对象转换为JSON字符串&#xff08;序列化&#xff09;&#xff0c;也可以将JSON字符串转换为Python对象&#xf…

微软推出首款量子计算芯片Majorana 1

全球首款拓扑架构量子芯片问世&#xff0c;2025年2月20日&#xff0c;经过近20年研究&#xff0c;微软推出了首款量子计算芯片Majorana 1&#xff0c;其宣传视频如本文末尾所示。 微软表示&#xff0c;开发Majorana 1需要创造一种全新的物质状态&#xff0c;即所谓的“拓扑体”…

【QT】QT中的文件IO

QT中的文件IO 一、有关文件IO的类二、步骤1、定义QFile的对象,与要读写的文件绑定在一起2、打开文件3、读写文件1&#xff09;读取文件2&#xff09;写入文件 4、关闭文件5、示例代码&#xff1a; 三、QString和QByteArray之间的转换1、方法2、示例代码&#xff1a; 四、QFileI…

Nginx 499 错误的原因及解决方法

Nginx 499 错误的原因及解决方法 原因 客户端超时&#xff1a; 客户端在等待服务器响应时超时&#xff0c;导致连接被关闭。 解决方法&#xff1a;优化服务端响应时间&#xff0c;或调大客户端的连接超时时间。 服务端响应过慢&#xff1a; 后端服务处理请求时间过长。 解决方法…

Smith-Waterman 算法(C++实现)

本文实现Smith-Waterman 算法案例&#xff0c;用于局部序列比对。该算法是生物信息学中用于寻找两个 DNA、RNA 或蛋白质序列之间最优局部比对的经典算法&#xff0c;广泛应用于序列相似性分析和功能预测。 问题描述 给定两个生物序列 seq1 和 seq2&#xff0c;如何找到它们的最…