使用MySQL Yum 源在Linux上安装MySQL

OracleLinux、Red Hat EnterpriseLinux、CentOS和Fedora的MySQL Yum源提供了RPM安装包,用于安装MySQL服务器、客户端、MySQLWorkbench、MySQL实用程序、MySQL路由器、MySQLShell、连接器/ODBC、连接器/Python等

在你开始之前

作为一种流行的开源软件,MySQL以其原始或重新打包的形式被广泛安装在来自各种来源的许多系统上,包括不同的软件下载站点、软件存储库等。以下说明假定您未使用第三方RPM包在您的系统上安装过MySQL。

yum源RPM文件名以mysql84开头,它描述了安装时默认启用的MySQL系列。在这种情况下,MySQL8.4 LTS子存储库默认启用。它还包含其他子存储库版本,如默认禁用的MySQL8.0和MySQL创新系列。

MySQL全新安装步骤

按照以下步骤选择和安装最新的MySQL产品:

1、添加MySQL Yum源

将 MySQL Yum 仓库添加到系统的仓库列表,这通常是一次性操作,通过安装 MySQL 提供的 RPM 包来完成。请按照以下步骤操作:

a、从MySQLYum Repository页面(MySQL :: Download MySQL Yum Repository)在MySQL开发者专区下载。

b、为您的平台选择对应的包并下载。

c、安装下载的发布包,包文件格式为:

mysql84-community-release-{platform}-{version-number}.noarch.rpm
  • mysql84:表示默认启用的MySQL版本。在这种情况下,MySQL8.4默认启用,8.0MySQL和MySQL创新系列都可用但默认禁用。

  • {platform}:平台代码,如el7、el8、el9、fc39、fc40或fc41。el代表EnterpriseLinux,fc代表Fedora,并以平台的基本版本号结尾。

  • {version-number}:MySQL存储库的版本配置RPM,因为它们偶尔会收到更新。

安装您为系统下载的RPM文件,例如:

$> sudo yum localinstall mysql84-community-release-{platform}-{version-number}.noarch.rpm
安装命令将MySQLYum仓库添加到系统的存储库列表中,并下载GnuPG密钥以检查软件包的完整性。

您可以通过以下命令检查MySQLYum存储库是否已成功添加并启用(对于启用dnf的系统,将命令中的yum替换为dnf):

$> yum repolist enabled | grep mysql.*-community

示例输出:

mysql-8.4-lts-community               MySQL 8.4 LTS Community Server
mysql-tools-8.4-lts-community            MySQL Tools 8.4 LTS Community

这也表明最新的LTS MySQL版本默认启用。下面描述了选择不同版本系列的方法,例如创新版(今天是9.1)或以前的系列(例如MySQL8.0)。

一旦在你的系统上启用了 MySQL Yum 仓库,使用 yum update 命令(或对于启用了 DNF 的系统使用 dnf upgrade)进行的任何系统范围的更新都会升级你系统上的 MySQL 包。如果 Yum 在 MySQL Yum 仓库中找到了替代包,它还会替换任何本地的第三方 MySQL 包。

2、选择一个发布系列

使用MySQLYum存储库时,默认选择最新的bugfix系列(当前MySQL8.4)进行安装。

在MySQLYum存储库中,每个MySQL Community Server发布系列都托管在不同的子存储库中。最新LTS系列(当前MySQL8.4)的子存储库默认启用,所有其他系列(例如,MySQL8.0和MySQL创新系列)的子存储库默认禁用。使用此命令查看所有可用的MySQL相关子存储库(对于启用dnf的系统,将命令中的yum替换为dnf):

$> yum repolist all | grep mysql
示例输出:
mysql-connectors-community                 MySQL Connectors Community   enabled
mysql-tools-8.4-lts-community               MySQL Tools 8.4 LTS Community        enabled
mysql-tools-community                      MySQL Tools Community        disabled
mysql-tools-innovation-community           MySQL Tools Innovation Commu disabled
mysql-innovation-community                 MySQL Innovation Release Com disabled
mysql-8.4-lts-community                          MySQL 8.4 Community LTS Server   enabled
mysql-8.4-lts-community-debuginfo                MySQL 8.4 Community LTS Server - disabled
mysql-8.4-lts-community-source                   MySQL 8.4 Community LTS Server - 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系列的bug子库,并为特定系列启用子库。如果您的平台支持yum-config-Manager或dnf config-Manager命令,您可以通过发出以下命令来禁用8.4系列的子库并为8.0系列启用子库:

$> sudo yum-config-manager --disable mysql-8.4-lts-community
$> sudo yum-config-manager --enable  mysql80-community

对于启用dnf的平台:

$> sudo dnf config-manager --disable mysql-8.4-lts-community
$> sudo dnf config-manager --enable mysql80-community

您可以通过手动编辑/etc/yum.repos.d/mysql-community.repo文件设置enabled选项来替换config-Manager命令的使用。

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

找到要配置的子存储库的条目,并编辑enabled选项。指定enabled=0禁用子存储库或enabled=1启用子存储库。例如,要从MySQL创新版本安装,请确保MySQL8.4子存储库条目enabled=0,创新条目enabled=1

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

您应该在任何时候只为一个版本系列启用子存储库。

通过运行以下命令并检查其输出来验证是否启用和禁用了正确的子存储库(对于启用dnf的系统,将命令中的yum替换为dnf):

$> yum repolist enabled | grep mysql
3、禁用默认MySQL模块

(仅限EL8系统)基于EL8的系统(如RHEL8和OracleLinux8)包含一个默认启用的MySQL模块。除非禁用此模块,否则它会屏蔽MySQL存储库提供的包。要禁用包含的模块并使MySQL存储库包可见,请使用以下命令(对于启用dnf的系统,将命令中的yum替换为dnf):

$> sudo yum module disable mysql
4、安装MySQL

通过以下命令安装MySQL(对于启用dnf的系统,将命令中的yum替换为dnf):

$> sudo yum install mysql-community-server

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

5、启动MySQL服务器

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

$> systemctl start mysqld

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

$> systemctl status mysqld

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

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

a、服务器被初始化

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

c、validate_password被安装并启用。

d、超级用户帐户'root'@'localhost已创建。超级用户的密码已设置并存储在错误日志文件中。要显示密码,请使用以下命令:

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

使用生成的临时密码登录,尽快更改root密码,并为超级用户帐户设置自定义密码:

$> mysql -uroot -p

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';

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

注意:基于EL7的平台的兼容性信息:以下RPM包与安装MySQL服务器的MySQLYum存储库中的包不兼容。使用MySQLYum存储库安装MySQL后,无法安装这些包(反之亦然)。

akonadi-mysql

akonadi-mysql

使用Yum安装其他MySQL产品和组件

您可以使用Yum安装和管理MySQL的单个组件。其中一些组件托管在MySQLYum存储库的子存储库中:例如,MySQL连接器位于MySQL连接器社区子存储库中,MySQL工作台位于MySQL工具社区中。您可以使用以下命令从MySQLYum存储库中列出平台可用的所有MySQL组件的包(对于启用dnf的系统,将命令中的yum替换为dnf):

$> sudo yum --disablerepo=\* --enablerepo='mysql*-community*' list available

使用以下命令安装您选择的任何包,将package-name替换为包的名称(对于启用dnf的系统,将命令中的yum替换为dnf):

$> sudo yum install package-name

例如,要在Fedora上安装MySQLWorkbench:

$> sudo dnf install mysql-workbench-community

 要安装共享客户端库(对于启用dnf的系统,将命令中的yum替换为dnf):

$> sudo yum install mysql-community-libs

平台特定说明

ARM支持

OracleLinux7支持ARM 64位(aarch64),并且需要OracleLinux7软件集合存储库(ol7_software_collections)。例如,要安装服务器:

$> yum-config-manager --enable ol7_software_collections
$> yum install mysql-community-server
通过yum更新MySQL

除了安装之外,您还可以使用MySQLYum存储库对MySQL产品和组件执行更新。

替换MySQL的本地第三方版本

如果您已经从本地软件存储库(即您自己的Linux分布提供的软件存储库)安装了第三方MySQL,请按照以下步骤操作:

1、备份您的数据库

为避免数据丢失,请在尝试使用MySQLYum存储库替换MySQL安装之前始终备份数据库。

2、添加MySQLYum源

将MySQLYum源添加到系统的存储库列表中。

3、使用yum update或DNF升级替换原生第三方版本

根据设计,当您在系统上执行yum更新命令(或启用dnf的系统的dnf升级)或yum更新mysql-server(或启用dnf的系统的dnf升级mysql-server)时,MySQLYum存储库会使用来自MySQLYum存储库的最新错误修复版本替换您的本机第三方MySQL。

使用Yum存储库更新MySQL后,使用旧版本的共享客户端库编译的应用程序应该能继续工作。

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java SpringBoot使用Apache POI导入导出Excel文件

点击下载《Java SpringBoot使用Apache POI导入导出Excel文件(源代码)》 1. Apache POI 简介 Apache POI 是一个强大的 Java 库,用于处理 Microsoft Office 文档,包括 Excel 文件(.xls 和 .xlsx)。在 Java Spring Boot 项目中&am…

基于Spring Boot的健康饮食管理系统

一、系统架构与技术栈 系统架构:系统通常采用典型的三层架构设计,分为表现层、业务逻辑层和数据访问层。表现层负责与用户进行交互,展示信息和接收用户输入;业务逻辑层处理系统的核心业务,如用户信息管理、饮食记录分…

Maven 详细配置:Maven 项目 POM 文件解读

Maven 是 Java 开发领域中广泛使用的项目管理和构建工具,通过其核心配置文件——POM(Project Object Model)文件,开发者能够定义项目的基本信息、依赖关系、插件配置以及构建生命周期等关键要素。POM 文件不仅是 Maven 项目的核心…

计算机网络 (23)IP层转发分组的过程

一、IP层的基本功能 IP层(Internet Protocol Layer)是网络通信模型中的关键层,属于OSI模型的第三层,即网络层。它负责在不同网络之间传输数据包,实现网络间的互联。IP层的主要功能包括寻址、路由、分段和重组、错误检测…

pip安装paddle失败

一、pip安装paddle失败,报错如下 Preparing metadata (setup.py) ... error error: subprocess-exited-with-error import common, dual, tight, data, prox ModuleNotFoundError: No module named common [end of output] 二、解决方法: 按照提示安装对…

计算机网络 (19)扩展的以太网

前言 以太网(Ethernet)是一种局域网(LAN)技术,它规定了包括物理层的连线、电子信号和介质访问层协议的内容。以太网技术不断演进,从最初的10Mbps到如今的10Gbps、25Gbps、40Gbps、100Gbps等,已成…

企业二要素如何用java实现

一、什么是企业二要素? 企业二要素,通过输入统一社会信用代码、企业名称或统一社会信用代码、法人名称,验证两者是否匹配一致。 二、企业二要素适用哪些场景? 例如:企业日常运营 1.文件与资料管理:企业…

企业三要素如何用PHP实现调用

一、什么是企业三要素? 企业三要素即传入的企业名称、法人名称、社会统一信用代码或注册号,校验此三项是否一致。 二、具体怎么样通过PHP实现接口调用? 下面我们以阿里云为例,通过PHP示例代码进行调用,参考如下&…

一份完整的软件测试报告如何编写?

在软件开发的过程中,测试是必不可少的环节。然而,测试报告往往是最被忽视的部分。你是否也曾在忙碌的测试工作后,面对一份模糊不清的测试报告感到头疼?一份清晰、完整且结构合理的测试报告,能够帮助团队快速了解软件的…

021-spring-springmvc-组件

SpringMVC的handMapping 比较重要的部分 比较重要的部分 比较重要的部分 关于组件的部分 这里以 RequestMappingHandlerMapping 为例子 默认的3个组件是: org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping org.springframework.web.servlet.mvc…

Golang的并发编程实战经验

## Golang的并发编程实战经验 并发编程是什么 并发编程是指程序的多个部分可以同时执行,这样可以提高程序的性能和效率。在Golang中,并发编程是通过goroutine来实现的,goroutine是一种轻量级线程,可以在一个程序中同时运行成千上万…

【时时三省】(C语言基础)常见的动态内存错误

山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省 对NULL指针的解引用操作 示例: malloc申请空间的时候它可能会失败 比如我申请一块非常大的空间 那么空间可能就会开辟失败 正常的话要写一个if(p=&#x…

计算机网络 (18)使用广播信道的数据链路层

一、广播信道的基本概念 广播信道是一种允许一个发送者向多个接收者发送数据的通信信道。在计算机网络中,广播信道通常用于局域网(LAN)内部的主机之间的通信。这种通信方式的主要优点是可以节省线路,实现资源共享。 二、广播信道数…

网络安全:路由技术

概述 路由技术到底研究什么内容 研究路由器寻找最佳路径的过程 路由器根据最佳路径转发数据包 知识点,重要OSRF,BGP1.静态路由原理 路由技术分类 静态路由和动态路由技术 静态路由:是第一代路由技术,由网络管理员手工静态写路由/路径告知路…

游戏引擎学习第72天

无论如何,我们今天有一些调试工作要做,因为昨天做了一些修改,结果没有时间进行调试和处理。我们知道自己还有一些需要解决的问题,却没有及时完成,所以我们想继续进行这些调试。对我们来说,拖延调试工作总是…

RP2K:一个面向细粒度图像的大规模零售商品数据集

这是一种用于细粒度图像分类的新的大规模零售产品数据集。与以往专注于相对较少产品的数据集不同,我们收集了2000多种不同零售产品的35万张图像,这些图像直接在真实的零售商店的货架上拍摄。我们的数据集旨在推进零售对象识别的研究,该研究具…

【Linux】传输层协议UDP

目录 再谈端口号 端口号范围划分 UDP协议 UDP协议端格式 UDP的特点 UDP的缓冲区 UDP注意事项 进一步深刻理解 再谈端口号 在上图中,有两个客户端A和B,客户端A打开了两个浏览器,这两个客户端都访问同一个服务器,都访问服务…

ReactiveStreams、Reactor、SpringWebFlux

注意: 本文内容于 2024-12-28 21:22:12 创建,可能不会在此平台上进行更新。如果您希望查看最新版本或更多相关内容,请访问原文地址:ReactiveStreams、Reactor、SpringWebFlux。感谢您的关注与支持! ReactiveStreams是…

window10同时安装mysql5.7和mysql8.4.X

前提:window10已经安装了mysql5.7想再安装个mysql8.4.x 步骤1:去官网下载mysql8.4.X https://dev.mysql.com/downloads/mysql/ 步骤2:解压后mysql根目录添加my.ini文件如下,注意端口改为3308(3306已经被mysql5.7占用…

VS2015中使用boost库函数时报错问题解决error C4996 ‘std::_Copy_impl‘

在VS2015中使用boost库函数buffer时遇到问题,其他函数定义均能执行,当加上bg::buffer(参数输入正确);语句后就报如下错误: 错误 C4996 std::_Copy_impl: Function call with parameters that may be unsafe - this call relies…