网站首页 > 博客文章 正文
使用最新版本的 MySQL 8.x,将可以得最好的支持、更好的功能、更可靠和更高的性能,并增加更多的安全性。反之亦然,如果使用旧版本的 MySQL(例如 5.7 或 5.6),则安全修复支持将不再可用。该漏洞可能会让您和您的公司面临很高的风险 - 泄露数据对您和您的公司造成损害。立即升级到最新版本的 MySQL8.x 非常重要。
以下是在选择升级时考虑的 6 大理由:
1. 生命周期
生命周期支持文档参考以下 URL,MySQL 5.7 的延伸支持将于 2023 年 10 月结束。该日期之后将不再有任何安全修复。如果存在任何重大安全漏洞,就会面临很高的风险,并且会暴露数据风险。
参考:https://www.oracle.com/us/assets/lifetime-support-technology-069183.pdf
MySQL 的创新版和长期支持 (LTS)版
参考:https://blogs.oracle.com/mysql/post/introducing-mysql-innovation-and-longterm-support-lts-versions
MySQL 版本的最新更新提供了“Innovation”和“LTS”版本。
2023年7月18日,MySQL刚刚发布了2个“版本号” - 即8.0.34和8.1.0。
8.0.34+ 以后将提供错误修复,直到计划于 2026 年 4 月的 8.0 生命周期结束 (EOL)
MySQL 数据库版本 8.1.0 是第一个创新版本。您可以找到发布的说明https://dev.mysql.com/doc/relnotes/mysql/8.1/en/news-8-1-0.html
MySQL 8.0.x(8.0.34 之前)同时具有功能和错误修复。今天的创新版本 8.1.0 就像过往的一种的更新版本。
现在有 2 个版本号分支, - 创新版本和仅错误修复版本,提供给用户多一种选择。
一方面,人们可以升级到 MySQL 8.1。这类似于功能+错误修复的旧方法。一些公司担心添加新功能会增加未知问题。可以迁移到 MySQL 8.0.34+ 版,仅需修复错误即可提高对数据库的信心水平。
2.开箱即用的高可用【组复制/Innodb集群】
除了从 5.7 升级到 MySQL 8.x 之外,使用组复制MGR的开箱即用 MySQL 高可用性也是主要原因之一。传统的主/从复制,甚至依然使用过去基于文件/位置的复制,而没有以GTID来定位的老方法。一般需要外部和手动操作来构建和配置 MySQL 的高可用。通过 MySQL 8.0/8.1 的开箱即用的组复制MGR/Innodb 集群,可以通过自动故障转移、切换和集群节点上下恢复的可管理性获得更多自动化。MySQL 8.0/8.1 组复制中的节点重新加入rejoin和expel超时功能对于集群运行的可靠性和稳定性非常关键。
MySQL 8.x 的ClusterSet新功能提供跨数据中心的多个InnoDB集群的复制支持。能使复制通道的节点之间的自动故障转移自动化。ClusterSet 支持方便且易于使用,可以通过单个命令切换主集群。以做到对称部署的灾难恢复处理。
3. 安全性
MySQL 8.x 的安全性是进行升级的重要原因之一。除了数据文件 (ibd)要加密保护, 其他在存储上的数据, 有 binlog、redo/undo日志,审核日志也 可以利用TDE 来加密保护。
密码管理和 MySQL 5.7 的mysql_native_password 插件相比,MySQL 8.x [caching_sha2_password]的身份验证插件具有 SHA2 和缓存功能,可实现更安全、更快速的连接。
MySQL8.x 的双密码新功能提供更轻松的分阶段进行凭证更改,无需停机, 应用以帐户的双重密码,使应用有新密码可以登入同時旧密码没改好的应用也可以登入。当所有的密码配置改好,老密码就可以停用。
MySQL 8.x 还有许多其他新的安全功能。例如:多重身份验证(Multi-factor Authentication)、Partial Revoke Privileges和连接控制插件等等。
更重要的是,自2023 年 10 起 MySQL 5.7 将进入EOL不再获得任何新的安全修复。只有通过MySQL 8.x更新,才可以达到更安全的数据保护。
4. 易于管理和配置
MySQL 8.x 提供了方便的配置和管理的新功能,无需重新启动服务器,进而提升可用性。这也被认为是减少停机时间并且易于使用。
首先,持久变量 - 在运行时保留全局系统变量的功能无需更新配置文件(例如 my.cnf),而是可以使用 SQL 命令在服务器启动时保留服务器配置。
SET PERSIST | PERSIST_ONLY variable=value;
RESET PERSIT [IF EXISTS] variable;
持久variable/value 存储在 DATADIR 配置下的 mysqld-auto.cnf 文件中。
Performance Schema persisted_variables 表提供了 mysqld-auto.cnf 文件的 SQL 接口,允许在运行时使用 SELECT 语句检查其内容。
此外,ONLINE DDL(例如 INSTANT ADD COLUMN 功能)可以不需锁表的在线更改表结构,更高效地维护 MySQL 数据库。
MySQL Shell 工具可以更轻松地处理 MySQL 或来自外部其他源的转储/加载。它还允许 OCI 云上MySQL 数据库服务的兼容性设置。通过MySQL Shell 的升级检查功能,可以提供对 MySQL 5.6 或 5.7升级到 8.0的检查报告。
5. 具有高性能和机器学习和DataLake功能的MySQL Heatwave AutoML
新一代MySQL Heatwave基于MySQL 8.x。MySQL Heatwave 是唯一由内存查询加速器提供支持的完全托管数据库服务。将事务、分析和机器学习服务整合到一个 MySQL 数据库中,提供实时、安全的分析,且没有 ETL 复制的复杂性、降低延迟时间和低成本的数据库平台。
要部署 MySQL HeatWave,可以选择在 Oracle Cloud Infrastructure (OCI)、Amazon Web Services (AWS) 和 Microsoft Azure。还可以利用Oracle Dedicated Region Cloud@Customer在数据中心使用 MySQL HeatWave。
有关 MySQL Heatwave 的更多信息,请查看 URL https://www.mysql.com/products/mysqlheatwave/
6. 不受数据库崩溃影响,能安心的更改表结构
MySQL 5.7以前的数据字典是基于不支持事务、不具崩溃安全性的MyISAM引擎,如果当表正在做Alter Table命令以更改表结构时数据库崩溃,有可能因该表的数据字典和表之InnoDB中的结构不一致而造成数据库异常.这个问题在MySQL 8.0因为将数据字典改成崩溃安全的InnoDB引擎,支持DDL原子化 而得以解决。
最后,进行升级也可能有利于未来和即将开发的项目。平台 / 操作系统也可能有对最新技术,新版本的支持的要求。选择升级的原因有很多。有些人可能会优先考虑可靠性。有些人可能会考虑安全性。有些可能是出于兼容性原因。总而言之,升级到最新版本绝对是从今天开始。
猜你喜欢
- 2024-09-10 解决Navicat连接 Mysql 8 出现1251- Client does not support错误
- 2024-09-10 win10安装mysql遇到的坑(win10安装mysql5.5)
- 2024-09-10 MySQL系列-二进制包安装(v8.0.24)
- 2024-09-10 Win10+docker+Laradock(下篇):Docker的基本操作与项目开发配置
- 2024-09-10 为Debezium配置MySQL单机版(mysqld 指定配置文件)
- 2024-09-10 Java 连接 MySQL 8.0 排错案例-爱可生
- 2024-09-10 MySQL数据库下载、安装、配置、卸载
- 2024-09-10 Django + MySQL 8 开发环境用 Docker来部署
- 2024-09-10 【每日一学】数据库大揭秘:MySQL 事务学习手册,精通数据操作!
- 2024-09-10 MySQL性能基准测试对比:MySQL 5.7与MySQL 8.0
你 发表评论:
欢迎- 367℃用AI Agent治理微服务的复杂性问题|QCon
- 358℃初次使用IntelliJ IDEA新建Maven项目
- 356℃手把手教程「JavaWeb」优雅的SpringMvc+Mybatis整合之路
- 351℃Maven技术方案最全手册(mavena)
- 348℃安利Touch Bar 专属应用,让闲置的Touch Bar活跃起来!
- 346℃InfoQ 2024 年趋势报告:架构篇(infoq+2024+年趋势报告:架构篇分析)
- 345℃IntelliJ IDEA 2018版本和2022版本创建 Maven 项目对比
- 342℃从头搭建 IntelliJ IDEA 环境(intellij idea建包)
- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)