Linux下载安装MySQL8.4
这里写目录标题
- 一、准备工作
- 查看系统环境
- 查看系统架构
- 卸载已安装的版本
- 二、下载MySQL安装包
- 官网地址
- 三、安装过程
- 上传到服务器目录
- 解压缩,设置目录及权限
- 配置my.cnf文件
- 初始化数据库
- 配置MySQL
- 开放端口
一、准备工作
查看系统环境
确认Linux系统的版本和架构,确保下载的MySQL安装包与系统兼容。
cat /etc/os-release
获取Linux发行版的信息。这个文件包含了发行版的名称、版本号等信息。

查看具体版本
ldd --version
glibc是GNU C Library,是Linux系统中非常重要的一部分。
查看系统架构
系统架构决定了应该下载32位还是64位的MySQL安装包。通过uname命令查看系统架构:
uname -m

卸载已安装的版本
检查系统是否已安装其他版本的MySQL
先进行卸载。
检查是否安装
rpm -qa | grep mysql
如果已安装mysql,先删除(我这里是新虚拟机,没有安装过)
rpm -e --nodeps +上述检查出来的包名
卸载完成后,还要还用上面的命令再次检查是否安装
搜索存在哪些mysql文件夹
find / -name mysql
如果有mysql文件夹则全部删除
rm -rf +对应的包名
再次检查mysql文件夹
二、下载MySQL安装包
先查了一下现在mysql最新的长期支持版是哪个版本,打算安装最新的LTS版.
查的结果是:
MySQL最新的长期支持版是MySQL 8.4。
MySQL的发布模型分为两个主要轨道:LTS(长期支持)和创新版本。LTS版本大约每两年发布一次,提供更长时间的更新和安全补丁支持,以确保系统的稳定和可靠。MySQL 8.4是第一个LTS版本,于2024年4月30日发布,提供了5年的标准支持和3年的扩展支持。
官网地址
官网地址: https://downloads.mysql.com/archives/community/
我选择的是Linux-Generic
知识扩展(不想了解的小伙伴,可以直接跳过这部分不看)
下面还有一个 red hat enterprise linux/oracle linux
inux-Generic并不是一个特指某个具体Linux发行版或版本的术语。相反,它可能是在某些安装程序、软件包管理器或文档中用于指代Linux的通用或标准版本的通用词汇。不过,由于Linux的多样性和开源特性,实际上并不存在一个名为“Linux-Generic”的官方Linux发行版。
关于Red Hat Enterprise Linux(RHEL)和Oracle Linux的选择,这两个都是企业级Linux发行版,它们提供了稳定、安全和高性能的环境,适用于需要高可靠性和可预测性的应用场景。它们之间的主要区别在于开发者和支持服务的不同:
● Red Hat Enterprise Linux(RHEL):由Red Hat公司开发和维护,提供全面的企业级支持服务,包括订阅服务、安全更新、技术支持等。RHEL以其稳定性和安全性而著称,是许多大型企业和组织的首选Linux发行版。
● Oracle Linux:由Oracle公司开发和维护,与RHEL高度兼容,因为它基于相同的源代码和二进制兼容性。Oracle Linux也提供了企业级支持服务,并且与Oracle数据库和其他Oracle产品紧密集成,提供了优化的性能和兼容性。
选择好之后,Download

三、安装过程
上传到服务器目录

解压缩,设置目录及权限
tar -xf mysql-8.4.0-linux-glibc2.17-x86_64.tar.xz
给文件夹重新命名为mysql,移动位置并重新命名
mv mysql-8.4.0-linux-glibc2.17-x86_64 /usr/local/mysq
创建mysql用户组和用户并准备MySQL数据库的存储目录
#创建一个新的用户组,命名为“mysql”groupadd mysql#创建一个新的用户,命名为“mysql”useradd -r -g mysql mysql
设置MySQL数据库的存储目录及其权限
#创建目录
mkdir -p /data/mysql
#修改权限
chown mysql:mysql -R /data/mysql
chown 是 “change owner” 的缩写,用于改变文件或目录的所有者和所属组。
mysql:mysql 指定了新的所有者和所属组,这里都是 mysql。这里是将 /data/mysql 目录及其内容(如果有的话)的所有者和所属组都改为 mysql。
-R 参数表示递归地改变目录及其下所有文件和子目录的所有者和所属组。
以上命令确保了 /data/mysql 目录及其内容归 mysql 用户和组所有,这对于MySQL服务器的正常运行是必要的。

配置my.cnf文件
找到/etc/my.cnf并打开my.cnf
vim etc/my.cnf

这里主要包括服务器的基本设置、客户端配置、性能优化、日志记录、安全设置等。
如需设置MySQL以不区分大小写,需要在此步设置
lower_case_table_names=1
其他没什么要改的。
初始化数据库
进入mysql的bin目录下
cd usr/local/mysql/bin/
初始化
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize
查看初始密码
cat /data/mysql/mysql.err
将mysql服务添加到/etc/init.d/mysql中
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
将/usr/local/mysql/support-files/mysql.server脚本复制到/etc/init.d/mysql的目的是为了方便地管理MySQL服务的启动、停止、重启和状态检查等操作。这个脚本是MySQL提供的一个服务管理脚本,它包含了启动和停止MySQL服务所需的命令和逻辑。
启动服务
service mysql start
查询是否启动
ps -ef|grep mysql
设置mysql环境变量
vim /etc/profile
再最后面添加
export PATH=$PATH:/usr/local/mysql/bin

重启配置
source /etc/profile

source 命令是一个内建的shell命令,用于读取并执行指定文件中的命令。当你执行 source /etc/profile 命令时,你实际上是在告诉shell读取并执行 /etc/profile 文件中的命令。
检查环境,确认 MySQL 及其工具是否安装成功
whereis mysql
whereis mysqldump

配置MySQL
进入mysql
mysql -u root -p2
填写密码

输入密码时不会显示出来,填写完成点击enter
设置密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH 'caching_sha2_password' BY 'root'
by后为自己设置密码

MySQL 8.0 及以后的版本默认使用 caching_sha2_password 插件作为用户认证方式。
刷新
flush privileges
配置远程连接
use mysql;
# 将 root 用户的 host 属性设置为 %,表示 root 用户可以从任何 IP 地址连接到 MySQL 服务器。
update user set host='%' where user='root';flush privileges;

开放端口
# 查看防火墙状态
firewall-cmd --state# 开启防火墙
systemctl start firewalld # 停止防火墙
systemctl stop firewalld.service # 禁止防火墙开机启动
systemctl disable firewalld.service # 重启防火墙
systemctl restart firewalld.service # 开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 开放端口之后 需要重新启动防火墙
systemctl restart firewalld.service # 重新加载防火墙规则firewall-cmd --reload

本地连接测试

相关文章:
Linux下载安装MySQL8.4
这里写目录标题 一、准备工作查看系统环境查看系统架构卸载已安装的版本 二、下载MySQL安装包官网地址 三、安装过程上传到服务器目录解压缩,设置目录及权限配置my.cnf文件初始化数据库配置MySQL开放端口 一、准备工作 查看系统环境 确认Linux系统的版本和架构&am…...
强化学习笔记之【DDPG算法】
强化学习笔记之【DDPG算法】 文章目录 强化学习笔记之【DDPG算法】前言:原论文伪代码DDPG算法DDPG 中的四个网络代码核心更新公式 前言: 本文为强化学习笔记第二篇,第一篇讲的是Q-learning和DQN 就是因为DDPG引入了Actor-Critic模型&#x…...
c++继承(下)
c继承(下) (1)继承与友元(2)继承与静态成员(3)多继承及其菱形继承问题3.1 继承模型3.2 虚继承3.3 多继承中指针偏移问题 (4)继承和组合(9…...
数据结构 ——— 单链表oj题:反转链表
目录 题目要求 手搓一个简易链表 代码实现 题目要求 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表 手搓一个简易链表 代码演示: struct ListNode* n1 (struct ListNode*)malloc(sizeof(struct ListNode)); assert(n1);…...
前端项目npm install报错解决的解决办法
报错问题一: [rootspug-api spug_web]# npm install npm WARN deprecated xterm4.19.0: This package is now deprecated. Move to xterm/xterm instead. npm WARN deprecated workbox-google-analytics4.3.1: It is not compatible with newer versions of GA starting with v…...
vue双向绑定/小程序双向绑定区别
Vue双向绑定与小程序双向绑定在实现方式、语法差异以及功能特性上均存在显著区别。以下是对这两者的详细比较: 一、实现方式 Vue双向绑定 Vue的双向绑定主要通过其响应式数据系统实现。Vue使用Object.defineProperty()方法(或在Vue 3中使用Proxy对象&am…...
华为OD机试真题---字符串变换最小字符串
题目描述: 给定一个字符串s,最多只能进行一次变换,返回变换后能得到的最小字符串(按照字典序进行比较)。 变换规则: 交换字符串中任意两个不同位置的字符。 输入描述: 一串小写字母组成的字符串s 输出描述: 按照要求进行变换得到的最小字符串 补…...
JAVA基础面试题汇总(持续更新)
1、精确运算场景使用浮点型运算问题 精确运算场景(如金融领域计算应计利息)计算数字,使用浮点型,由于精度丢失问题,会导致计算后的结果和预期不一致,使用Bigdecimal类型解决此问题,示例代码如下…...
设计模式-创建型-常用:单例模式、工厂模式、建造者模式
单例模式 概念 一个类只允许创建一个对象(或实例),那这个类就是单例类,这种设计模式就叫做单例模式。对于一些类,创建和销毁比较复杂,如果每次使用都创建一个对象会很耗费性能,因此可以把它设…...
【数据结构】【链表代码】随机链表的复制
/*** Definition for a Node.* struct Node {* int val;* struct Node *next;* struct Node *random;* };*/typedef struct Node Node; struct Node* copyRandomList(struct Node* head) {if(headNULL)return NULL;//1.拷贝结点,连接到原结点的后面Node…...
Linux 系统五种帮助命令的使用
Linux 系统五种帮助命令的使用 本文将介绍 Linux 系统中常用的帮助命令,包括 man、–help、whatis、apropos 和 info 命令。这些命令对于新手和有经验的用户来说,都是查找命令信息、理解命令功能的有力工具。 文章目录 Linux 系统五种帮助命令的使用一…...
Vueron引领未来出行:2026年ADAS激光雷达解决方案上市路线图深度剖析
Vueron ADAS激光雷达解决方案路线图分析:2026年上市展望 Vueron近期发布的ADAS激光雷达解决方案路线图,标志着该公司在自动驾驶技术领域迈出了重要一步。该路线图以2026年上市为目标,彰显了Vueron对未来市场趋势的精准把握和对技术创新的坚定…...
Java | Leetcode java题解之第458题可怜的小猪
题目: 题解: class Solution {public int poorPigs(int buckets, int minutesToDie, int minutesToTest) {if (buckets 1) {return 0;}int[][] combinations new int[buckets 1][buckets 1];combinations[0][0] 1;int iterations minutesToTest /…...
怎么不改变视频大小的情况下,修改视频的时长
视频文件太大怎么变小?不影响画质的四种方法 怎么不改变视频大小的情况下,修改视频的时长 截取结尾的时间你可以使用 ffmpeg 来裁剪视频的结尾部分。假设你想去掉视频最后的3秒钟,可以先使用 ffmpeg 获取视频的总时长,然后通过指定一个新的…...
数据结构:AVL树
前言 学习了普通二叉树,发现普通二叉树作用不大,于是我们学习了搜索二叉树,给二叉树新增了搜索、排序、去重等特性, 但是,在极端情况下搜索二叉树会退化成单边树,搜索的时间复杂度达到了O(N),这…...
系统守护者:使用PyCharm与Python实现关键硬件状态的实时监控
目录 前言 系统准备 软件下载与安装 安装相关库 程序准备 主体程序 更改后的程序: 编写.NET程序 前言 在现代生活中,电脑作为核心工具,其性能和稳定性的维护至关重要。为确保电脑高效运行,我们不仅需关注软件优化…...
【工作流引擎集成】springboot+Vue+activiti+mysql带工作流集成系统,直接用于业务开发,流程设计,工作流审批,会签
前言 activiti工作流引擎项目,企业erp、oa、hr、crm等企事业办公系统轻松落地,一套完整并且实际运用在多套项目中的案例,满足日常业务流程审批需求。 一、项目形式 springbootvueactiviti集成了activiti在线编辑器,流行的前后端…...
SumatraPDF一打开就无响应怎么办?
结论:当前安装版不论32位还是64位都会出现问题。使用portable免安装版未发现相关问题。——sumatrapdf可以用于pdf, epub, mobi 等格式文件的浏览。 点击看相关问题和讨论...
棋牌灯控计时计费系统软件免费试用版怎么下载 佳易王计时收银管理系统操作教程
一、前言 【试用版软件下载,可以点击本文章最下方官网卡片】 棋牌灯控计时计费系统软件免费试用版怎么下载 佳易王计时收银管理系统操作教程 棋牌计时计费软件的应用也提升了顾客的服务体验,顾客可以清晰的看到自己的消费时间和费用。增加了消费的透明…...
Excel下拉菜单制作及选项修改
Excel下拉菜单 1、下拉菜单制作2、下拉菜单修改 下拉框(选项菜单)是十分常见的功能。Excel支持下拉框制作,通过预设选项进行菜单选择,可以避免手动输入错误和重复工作,提升数据输入的准确性和效率 1、下拉菜单制作 步…...
Java 语言特性(面试系列2)
一、SQL 基础 1. 复杂查询 (1)连接查询(JOIN) 内连接(INNER JOIN):返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...
Java如何权衡是使用无序的数组还是有序的数组
在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...
Java面试专项一-准备篇
一、企业简历筛选规则 一般企业的简历筛选流程:首先由HR先筛选一部分简历后,在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如:Boss直聘(招聘方平台) 直接按照条件进行筛选 例如:…...
NXP S32K146 T-Box 携手 SD NAND(贴片式TF卡):驱动汽车智能革新的黄金组合
在汽车智能化的汹涌浪潮中,车辆不再仅仅是传统的交通工具,而是逐步演变为高度智能的移动终端。这一转变的核心支撑,来自于车内关键技术的深度融合与协同创新。车载远程信息处理盒(T-Box)方案:NXP S32K146 与…...
Golang——9、反射和文件操作
反射和文件操作 1、反射1.1、reflect.TypeOf()获取任意值的类型对象1.2、reflect.ValueOf()1.3、结构体反射 2、文件操作2.1、os.Open()打开文件2.2、方式一:使用Read()读取文件2.3、方式二:bufio读取文件2.4、方式三:os.ReadFile读取2.5、写…...
给网站添加live2d看板娘
给网站添加live2d看板娘 参考文献: stevenjoezhang/live2d-widget: 把萌萌哒的看板娘抱回家 (ノ≧∇≦)ノ | Live2D widget for web platformEikanya/Live2d-model: Live2d model collectionzenghongtu/live2d-model-assets 前言 网站环境如下,文章也主…...
MySQL的pymysql操作
本章是MySQL的最后一章,MySQL到此完结,下一站Hadoop!!! 这章很简单,完整代码在最后,详细讲解之前python课程里面也有,感兴趣的可以往前找一下 一、查询操作 我们需要打开pycharm …...
前端调试HTTP状态码
1xx(信息类状态码) 这类状态码表示临时响应,需要客户端继续处理请求。 100 Continue 服务器已收到请求的初始部分,客户端应继续发送剩余部分。 2xx(成功类状态码) 表示请求已成功被服务器接收、理解并处…...
CSS3相关知识点
CSS3相关知识点 CSS3私有前缀私有前缀私有前缀存在的意义常见浏览器的私有前缀 CSS3基本语法CSS3 新增长度单位CSS3 新增颜色设置方式CSS3 新增选择器CSS3 新增盒模型相关属性box-sizing 怪异盒模型resize调整盒子大小box-shadow 盒子阴影opacity 不透明度 CSS3 新增背景属性ba…...
【免费数据】2005-2019年我国272个地级市的旅游竞争力多指标数据(33个指标)
旅游业是一个城市的重要产业构成。旅游竞争力是一个城市竞争力的重要构成部分。一个城市的旅游竞争力反映了其在旅游市场竞争中的比较优势。 今日我们分享的是2005-2019年我国272个地级市的旅游竞争力多指标数据!该数据集源自2025年4月发表于《地理学报》的论文成果…...
