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、下拉菜单制作 步…...
PHP和Node.js哪个更爽?
先说结论,rust完胜。 php:laravel,swoole,webman,最开始在苏宁的时候写了几年php,当时觉得php真的是世界上最好的语言,因为当初活在舒适圈里,不愿意跳出来,就好比当初活在…...
在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:
在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档,…...

【网络安全产品大调研系列】2. 体验漏洞扫描
前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...
Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信
文章目录 Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket(服务端和客户端都要)2. 绑定本地地址和端口&#x…...

人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式
今天是关于AI如何在教学中增强学生的学习体验,我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育,这并非炒作,而是已经发生的巨大变革。教育机构和教育者不能忽视它,试图简单地禁止学生使…...

云原生安全实战:API网关Kong的鉴权与限流详解
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关(API Gateway) API网关是微服务架构中的核心组件,负责统一管理所有API的流量入口。它像一座…...
Python Einops库:深度学习中的张量操作革命
Einops(爱因斯坦操作库)就像给张量操作戴上了一副"语义眼镜"——让你用人类能理解的方式告诉计算机如何操作多维数组。这个基于爱因斯坦求和约定的库,用类似自然语言的表达式替代了晦涩的API调用,彻底改变了深度学习工程…...

基于PHP的连锁酒店管理系统
有需要请加文章底部Q哦 可远程调试 基于PHP的连锁酒店管理系统 一 介绍 连锁酒店管理系统基于原生PHP开发,数据库mysql,前端bootstrap。系统角色分为用户和管理员。 技术栈 phpmysqlbootstrapphpstudyvscode 二 功能 用户 1 注册/登录/注销 2 个人中…...

实战设计模式之模板方法模式
概述 模板方法模式定义了一个操作中的算法骨架,并将某些步骤延迟到子类中实现。模板方法使得子类可以在不改变算法结构的前提下,重新定义算法中的某些步骤。简单来说,就是在一个方法中定义了要执行的步骤顺序或算法框架,但允许子类…...
加密通信 + 行为分析:运营商行业安全防御体系重构
在数字经济蓬勃发展的时代,运营商作为信息通信网络的核心枢纽,承载着海量用户数据与关键业务传输,其安全防御体系的可靠性直接关乎国家安全、社会稳定与企业发展。随着网络攻击手段的不断升级,传统安全防护体系逐渐暴露出局限性&a…...