当前位置: 首页 > news >正文

【MySQL】关于MySQL升级到8.0版本的实践方案

关于MySQL升级到8.0版本的实践方案

关于数据库版本升级,一直都是热议话题,对于升级的缘由各家也有所不同,有业务驱动的,有DBA自发驱动的,有规划导向也有方向指引的……抛开各种原因,当升级这个决定落下来的时候,对于DBA手头的几百几千套数据库来说,就好比是一场动物大迁徙,满满的画面感。

从Oracle发布的版本生命周期规划可以看到,MySQL5.7已经走到了生命周期的终点,意味着后续将不再为 MySQL 5.7 提供官方更新、错误修复或安全补丁。
在这里插入图片描述
而要想让这件事情获得研发同学的大力支持,就需要平滑升级或者最低成本的改动。所以对于这场迁移的基本要求,我在心里默默对自己提了要求:零故障,平滑升级。

一、我们做数据库版本升级的理由

我们做这件事情是从规划导向来切入的,也有一部分DBA自驱的因素。说是规划导向,转义过来就是不打无准备之仗,MySQL后续的整体架构是构建在基础存储之上的,如果基础存储存在瓶颈,对于后续的架构演进也存在明显短板,所以我们在2019年底就开始调研并小范围在新业务中试点MySQL 8.0了。

如下是早期调研中对于MySQL 8.0和MySQL 5.7使用sysbench压测的一些信息供参考,可以看到MySQL 8.0是有明显性能提升的。至于MySQL 8.0的版本,我们的考虑是和验证测试的8.0.19保持一致,在后期支持新版本的无缝升级。
在这里插入图片描述
从功能上来说,开发特性更加丰富,SQL优化效果和运维功能上都有明显的提升,在兼容性方面会更加严格(兼容性严格具有两面性)。
在这里插入图片描述
在这些因素的基础之上,我们以点带面展开分析,发现多分支技术栈散乱只是表象,还有一些潜在问题和瓶颈问题:

1、MySQL版本过旧,架构管理不一致,运维复杂度较高

  1. MySQL 5.5和5.6为过旧技术栈,官方已不再维护

  2. 未来3年内需要从MySQL 5.7升级至8.0,演进复杂度高

  3. 40%操作系统版本过旧,后续的数据库版本升级存在风险

2、部分技术栈已闭源,服务异常时存在恢复风险

  1. Infobright已转为商业版维护

  2. <
http://www.lryc.cn/news/193642.html

相关文章:

  • 【Python-Django】基于TF-IDF算法的医疗推荐系统复现过程
  • 车辆车型识别系统python+TensorFlow+Django网页界面+算法模型
  • 小程序如何设置各种时间参数
  • CSS变量 var()的用法
  • 设计模式——21. 中介者模式
  • fastjson 1.2.47 远程命令执行漏洞
  • 【k8s 开发排错】k8s组件开发排错之pprof
  • 记录一次典型oom的处理过程
  • centos离线安装telnet、traceroute工具
  • 【java学习—七】对象的实例化过程(33)
  • P4451 [国家集训队] 整数的lqp拆分
  • Mysql 日常命令记录
  • 可视化上证50结构图
  • STM32_PID通用算法增量式和位置式
  • Spark的数据输入、数据计算、数据输出
  • Windows端口号被占用的查看方法及解决办法
  • Web3 整理React项目 导入Web3 并获取区块链信息
  • 基于SpringBoot的旅游网站开题报告
  • 基于SSM的班级事务管理系统
  • 基于Spring Boot开发的汽车租赁管理系统
  • 精品基于django的高校竞赛比赛管理系统Python
  • RustDay04------Exercise[01-10]
  • ARM day9
  • 【TensorFlow2 之013】TensorFlow-Lite
  • Java基础--阳光总在风雨后,请相信彩虹
  • 高级网络调试技巧:使用Charles Proxy捕获和修改HTTP/HTTPS请求
  • Discuz大气游戏风格模板/仿lol英雄联盟游戏DZ游戏模板GBK
  • 206、SpringBoot 整合 RabbitMQ 的自动配置类 和 对应的属性处理类 的知识点
  • 网络链接失败怀疑是服务器处于非正常状态?如何用本地电脑查看服务器是否正常?
  • 文件操作(打开关闭文件、文件顺序以及随机读写)