Linux MySQL8.0.11版本升级到MySQL8.0.23【数据库备份】

article/2025/10/10 18:21:09

因修复绿盟扫出来的一系列漏洞进行版本升级

msyql下载链接:https://dev.mysql.com/downloads/mysql/

1.选择对应linux版本下载

在这里插入图片描述

有两种方式,一种是用rz命令选择文件直接上传。
没有rz命令,需要先下载:

# yum -y install lrzsz
# rz

另一种是xftp ,需要下载客户端:https://www.netsarang.com/zh/all-downloads/
在这里插入图片描述

在这里插入图片描述

2.查看一下当前mysql版本

# rpm -qa|grep mysql

【我这里是vm虚拟机测试已经升级到了8.0.23】
在这里插入图片描述

3.备份数据库(这个很重要)也有几种备份方式。

3.1 通过mysqldump命令来进行备份,个人感觉这种备份方式最方便。

# mysqldump -uroot -p  --all-databases>/你想存放的路径/备份的名称.sql 【备份全部数据库】
# mysqldump -uroot -p  -wisdom>/opt/tess.sql  【备份单个数据库可指定数据库名称】
# mysqldump -uroot -p --default-character-set=utf8 wisdom>/opt/test.sql  【也可指定编码格式】

执行后可到备份的路径下查看有没有备份成功。不放心可以用另外一种备份方式再备份一遍。
在这里插入图片描述

3.2 通过MySQL管理工具Navicat或者sqlyog都可以进行备份

3.2.1 我这里用Navicat,右键数据库-转储sql文件-结构和数据;

在这里插入图片描述
在这里插入图片描述
3.2.2 或者也可以选择一个数据库-点击备份-点击新建备份。可以选择表或者视图一起进行备份。

在这里插入图片描述
在这里插入图片描述

4.清缓存避免升级版本产生差异

# mysql -u root -p --execute="SET GLOBAL innodb_fast_shutdown=0"

5.关闭数据库

#systemctl stop mysqld
或者
#service mysql stop

6.mysql数据库升级

# rpm -Uvh  *.rpm
# rpm -Uvh  *.rpm  --nodeps --force

可能会报依赖检测失败的错误,后边加个 --nodeps --force
在这里插入图片描述
再次执行:
在这里插入图片描述

7.启动升级

# systemctl mysqld start
# mysql_upgrade -uroot -p 【这个命令5.7版本都可以的】
# mysqld --upgrade=NONE 【8.0.16之后用这个】
好像是权限不够,又加了一个 --user=root
# mysqld --upgrade=NONE --user=root

需要注意的是MySQL 8.0.16开始 mysql_upgrade 升级程序已经废弃
MySQL 8.0.16之后 新的升级方式,整体来讲分为2个步骤。

1.升级数据字典(DD)
2.服务器升级:升级 MySQL 系统表、升级用户表、升级 sys 表、升级帮助更新表
新的选项都表明什么?

**NONE:**不尝试进行升级

**AUTO:**默认选项,MySQL 进行数据字典升级和服务升级

**MINIMAL:**仅升级数据字典

**FORCE:**强制升级,相似旧的 mysql_upgrade –force

8.升级成功后查看版本

# mysql -	V

9.数据库数据还原

数据库还原,可以随便指定一个自带的数据库,后边跟sql文件的路径。执行命令:

# mysql -uroot -p --default-character-set=utf8 数据库名 </opt/mysqlbak.sql

*所遇问题记录

我在虚拟机中先安装了一个8.0.11版本然后升级到8.0.23,这个过程可以说是顺利的,然后就去服务器进行操作,就遇到了一个升级完成后无法成功启动mysql服务的问题。搞了一下午还是没升级成功,由于时间紧急,最后还是把所有有关mysql的服务全部卸载,重新装了一遍。

1.也就是上述步骤的第七步,启动mysql服务报错:

在这里插入图片描述
2.这是搜到的其他人的处理方法:https://blog.csdn.net/eagle89/article/details/79918256
3.我是先卸载mysql相关服务重装了一遍,过程倒也不是太麻烦~
参考这位的博客:https://blog.csdn.net/private66/article/details/80624212
我下边做一个引用:

卸载mysql服务

1.查看mysql安装了哪些包

# rpm -qa|grep mysql

在这里插入图片描述
2.mysql服务关闭并卸载

# service mysqld status -- [查看mysql服务运行状态]

在这里插入图片描述

# service mysqld stop  --[关闭mysql]
# rpm -ev mysql-5.1.73-8.el6_8.x86_64    --[rpm -ev 跟已安装的包名]
# rpm -ev mysql-libs-5.1.73-8.el6_8.x86_64

注意:可能会抛依赖错误错 error:Failed dependencies:

,则加上 --nodeps不检查依赖关系删除

# rpm -e --nodeps 包名

3.删除遗留的mysql文件和依赖库

# find / -name mysql
# rm -rf /var/lib/mysql

4.msyql配置文件删除

# rm -rf /etc/my.cnf

5.检查一遍mysql 是否成功删除

# rpm -qa|grep mysql

重新安装查看上篇



http://chatgpt.dhexx.cn/article/OUhoO0Qg.shtml

相关文章

mysql进阶(二十八)GRANT REVOKE用法

文章目录 一、前言二、查看用户权限三、撤销已赋予给 MySQL 用户的权限四、grant、revoke 用户权限注意事项五、用户和权限管理命令六、 grant 权限七、拓展阅读 一、前言 MySQL权限系统围绕两个概念&#xff1a; 认证->确定用户是否允许连接数据库服务器&#xff1b;授权…

MySQL8.0.21升级到8.0.28(Linux)

需要提前准备好MySQL8.0.28的压缩包文件 1 查看当前mysql版本 2 停止当前运行的mysql service mysqld stop 3 将下载好的压缩包导入(8.0.28),解压压缩包 sudo tar -xvf mysql-8.0.28-linux-glibc2.12-x86_64.tar.xz -C /usr/local/ 4 修改之前的文件名,将mysql改为mysqlol…

15天学习MySQL计划-锁(进阶篇)-第十天

15天学习MySQL计划-锁&#xff08;进阶篇&#xff09;-第十天 锁 1.概述 1.介绍 ​ 锁是计算机协调多个进程或线程并发访问某个资源的机制。数据库中&#xff0c;除传统的计算资源&#xff08;cpu&#xff0c;ram&#xff0c;i/o&#xff09;的争用以外&#xff0c;数据也是…

第21天 数据库 Mysql

MySQL 数据库 概述 数据库&#xff08;Database&#xff09;是按照数据结构来组织、存储和管理数据的仓库 数据库分类 关系型数据库 关系型数据库模型是把复杂的数据结构归结为简单的二元关系&#xff08;即二维表格形式&#xff09;。在关系 型数据库中&#xff0c;对数…

MySQL进阶第一天

MySQL5.7之后&#xff0c;sql_mode中ONLY_FULL_GROUP_BY模式默认设置为打开状态。 ONLY_FULL_GROUP_BY的语义就是确定select target list中的所有列的值都是明确语义&#xff0c;简单的说来&#xff0c;在此模式下&#xff0c;target list中的值要么是来自于聚合函数&#xff…

04.28 MySQL

DQL:数据库的查询语句初学 1.查询全表数据 在查询之前,我们需要先创建一个所需的表 select *from 表名; [注意,实际开发中,写sql的时候,不能写**号,需要查询全表的时候,需要写全部的名称字段] select s.id as “编号”, s.name as “姓名”, s.age as “年龄”, s.math as “…

MySQL 总是差八个小时,如何破?

今天来聊一个简单的话题&#xff0c;这是一个小伙伴在微信上问我的&#xff0c;对于初学者我非常能理解这类问题带来的困扰&#xff0c;各种尝试&#xff0c;各种搜索&#xff0c;别人说的头头是道&#xff0c;但是就是解决不了自己的问题&#xff0c;今天我简单从两个方面来和…

存入mysql时间少了8小时

在接口测试的时候&#xff0c;发现时间少了8小时。通过网上各个博客发现了两个问题。 首先是显示在页面的时间格式(date)和我从api接口里测试的也不同。 时间格式的处理&#xff0c;前端的时间显示2020-07-13T16:02:00.0000000 在后端添加JsonFormat JsonFormat(shapeJsonFo…

mysql当日及后5天数据

java /mysql统计当天及前六天的数据&#xff0c;如果中间哪天数据为空&#xff0c;怎么在相应的位置插入动态的时间 你可以在查询出结果之后&#xff0c;生成JSON的时候&#xff0c;在那里判断一下后面时间不是与前面的时间相差一天&#xff0c;如果不是&#xff0c;把这天数据…

MYSQL 第六天

课堂作业 1. 创建数据库company,在库中创建两个表offices和employees表 小鹅通作业 1.用SQL语句创建学生表student&#xff0c;定义主键&#xff0c;姓名不能重名&#xff0c;性别只能输入男或女&#xff0c;所在系的默认值是 “计算机”。 create table student( Sno int p…

MySQL高级篇第二天

文章目录 一、Mysql的体系结构概览 二、 存储引擎 三、优化SQL步骤 一、Mysql的体系结构概览 整个MySQL Server由以下组成 Connection Pool : 连接池组件 Management Services & Utilities : 管理服务和工具组件 SQL Interface : SQL接口组件 Parser : 查询分析器组件 O…

MySql(第二天)

文章目录 数据库查询操作1.单表查询2.多表查询3.MySql远程连接 数据库查询操作 1.单表查询 --数据库操作前的准备 -- 创建数据库 -- create database python_test_1 charsetutf8;-- 使用数据库 -- use python_test_1;-- students表 -- create table students( -- id int …

mysql查询0~3天、4~7天、8~15天、16~30天的sql语句

1、NOW(), CURDATE(), CURTIME()的值 2、date_add(now(), interval 1 day) //当前时间加一天 date_sub(now(), interval 1 day) //当前时间减一天 3、简单函数 CASE [col_name] WHEN [value1] THEN [result1]…ELSE [default] END 搜索函数 CASE WHEN [expr] THEN [result1]……

idea中maven项目打包为jar

在idea中打包maven项目时有很多解决的方案&#xff0c;可出乎意料的是&#xff0c;使用某些方案时有一些未知的错误情况。经过测验后&#xff0c;记录了下面一种简单有效的方法 在pom.xml中添加 <build><plugins><plugin><groupId>org.apache.maven.…

maven项目打包部署到服务器上

创建一个maven项目&#xff0c;在本地工程依赖jar包启动完成后&#xff0c;是不够的&#xff0c;还需将项目文件使用maven编译打包然后部署到服务器上 主流的springboot项目打包的时候需要在pom文件中指定主方法等配置 解决打包部署的时候报错no main manifest attribute, in…

如何将maven项目打包成可执行的jar

方法一&#xff1a;将项目及所依赖的所有jar包打包成一个jar。 1、pom.xml添加assembly插件 2、执行mvn assembly:assembly 3、生成如下文件 4、执行java -jar quickstart-1.0.0-jar-with-dependencies.jar 备注&#xff1a;第2步的命令也可以改成mvn package&#xff0c;但需…

Maven项目打包

在做项目时&#xff0c;都会在做项目的打包操作的&#xff0c;不同的环境下有不同的打包方式&#xff0c;在maven项目中可以使用pom.xml配置文件中实现配置&#xff0c;首先要创建一个web项目 先说一下打包成war包吧 - 创建好项目后&#xff0c;需要配置pom.xml配置文件来指定打…

IDEA打包Maven项目

一、第一次需要在IntelliJ IDEA中打包Maven项目&#xff0c;弄了半天&#xff0c;才搞好&#xff0c;记录一下。 二、打包步骤 1. 在IntelliJ IDEA主界面的右侧点击Maven Project&#xff1a; 2. 在打开的页面中点击lifecycle&#xff1a; 3. 然后双击package&#xff1a; 4.…

【IDEA】Maven项目打包 无效的目标发行版: 17 (全)

问题解决方法 项目运行出错Maven打包出错 问题&#xff1a; 曾经切换过jdk版本&#xff0c;切回17时&#xff0c;出现的了如题的错误。 且运行不报错&#xff0c;但maven进行打包时报错。其他版本同理。 解决方法&#xff1a; 1. 项目运行出错 pom.xml可能出现问题&#…

maven如何打包你会吗?

1.新建一个maven项目&#xff0c;在main/java中建立Main类 public class Main {public static void main(String[] args) {System.out.println("hello java ...");} } 2.添加依赖&#xff0c;使其成为可执行包 <build><plugins><!--打包成为可执行包-…