MySql版本升级(8.0.19升级到8.0.22)
⼀、环境说明
操作系统:Windows Server2008 R2
数据库版本:MySql 8.0.19 数据库中数据量很⼩,处于测试环境,风险较低
⼆、升级原因
升级是因为测评漏洞,在进⾏国家三级等级保护测评过程中,漏扫发现多个MySql漏洞。
⼀共包含3个⾼危漏洞以及约50个⾼危漏洞,经过整体整改建议查看,需要升级到8.0.20版本后可以解决相关漏洞,因此评估对版本进⾏升级,发现最新版本的为8.0.22版本,直接⼀步到位,升级到最新版。
三、升级⽅法
查了相关资料,MySql升级从8.0.16是⼀个分⽔岭,在该版本前后的升级⽅法有所不同,8.0.16版本之后升级⽅法⼤⼤简化。恰好我这⾥是8.0.16版本后的,暗⾃庆幸⼀下。
⽹上⼤部分资料都是介绍8.0.16之前的版本升级,8.0.16后的版本升级资料不多,我这⾥是直接按照官⽅
⽂档进⾏的升级操作,简单的⼤概分为三步即可【停服务】—>【⽂件覆盖】—>【启服务】(像不像把⼤象放进冰箱⾥⾯的操作,只要三步,打开冰箱—>放进⼤象—>关上冰箱(* ̄︶ ̄))。
下⾯来介绍⼀下具体的操作:
官⽅升级⽂档参考:
⼤概总结如下(官⽅步骤中有⼀个操作可能可以通过多种⽅式实现):
mysql下载的zip版本安装步骤1、下载最新的安装包,我这⾥使⽤的是解压包的⽅式,所以下载的为ZIP格式⽂件(使⽤exe升级的⽅式⼤同⼩异,可以同样参考官⽅⽂档进⾏操作);
2、查看已安装Mysql的版本
可以通过 SELECT VERSION(); 语句查看;
SELECT VERSION();
或者通过CMD命令中执⾏命令查看
MYSQL -V
3、停⽌服务前确定数据库的引擎类型以及服务重启⽅式。
查看数据库默认引擎类型
show variables like '%storage_engine%';
查看提供的存储引擎
show engines;
也可以通过表查看某⼀个表的了类型,在表的创建语句中到ENGINE名称,⼀般是InnoDB。
show create table 表名;
设置服务关闭⽅式,
show variables like '%innodb_fast_shutdown%';
设置为0:会做清除脏页和插⼊缓冲区的合并操作,也会将脏页全部刷新到磁盘上⾯去,但是这个时候关闭的速度也是最慢的;
设置为1:关闭MySQL的时候不会做清除脏页和插⼊缓冲区的合并操作,也不会将脏页刷新到磁盘;
设置为2:不会做清除脏页和插⼊缓冲区的合并操作,也不会将脏页刷新到磁盘,但是会刷新到redo log⾥⾯,再下次启动mysql的时候恢复;
默认设置为1,可以通过 set global innodb_fast_shutdown=0 语句进⾏设置,建议设置为0或者1。
3、操作前备份
mysqldump -u root -p db-mcms-open > D:\backup20210106.sql
在cmd中通过语句输⼊密码进⾏数据库备份。
数据备份后,对原始的Mysql安装包也进⾏备份,以防万⼀。
4、停⽌服务
右键停⽌服务即可。
5、⽂件替换
将下载的最新安装包解压,并覆盖已安装版本,选择⽂件夹合并以及⽂件覆盖(新的包⾥⾯没有data⽂件夹以及my.ini配置⽂件)。
6、同第四步操作,启动服务即可
7、通过第⼆步语句进⾏版本验证以及数据库登录、应⽤等验证⼯作。
⾄此,整个升级完毕,个⼈升级⽐较顺利,过程中并未遇到什么问题,⽽且升级后进⾏了应⽤等验证,均⽆问题。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论