百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

MySQL各大版本新特性一览 mysql各版本之间区别

liuian 2024-12-26 15:05 59 浏览

这次应小伙伴的要求,来总结下这个 MySQL 主要版本的新特性

那么,我们一起往下看看叭~

我们直接来到官网查看

可以看到这里有三个版本 5.6 , 5.7 , 8.0

额 既然 5.5 找不到了,那我们就记住他的主要特点:

  1. innodb 就是从 5.5 这个版本开始成为 默认的存储引擎
  2. 引入了真 UTF8 ——> utf8mb4

为什么只有两点呢? 因为 4ye 的脑瓜子就只有这两点 哈哈哈

下面开始 5.6 的探索~

5.6

MySQL 5.6 Release Notes

打开上面的链接 , 如下图,这里在介绍这个新特性

What Is New in MySQL 5.6

剩下的就不多赘述啦,简单摘录了一些,需要完整资料的小伙伴请移步到官网查看~ (建议去翻一翻 ,毕竟除了新特性,还有 innodb 整体的介绍!)

innodb

这里对存储引擎 innodb 做了下面的增强

  1. 可以创建 全文索引
  2. 可以修改未压缩表的 InnoDB 页大小设置为 8KB4KB ,默认是 16KB 注意这里只有这三个参数有效(4 ,8 ,16) 。 参数: innodb_page_size
  3. InnoDB 的 redo log 文件可存储的最大值从 4g 升到 512g , 参数: innodb_log_file_size
  4. 可以设置 innodb 压缩级别 , 级别等级为 0-9 参数: innodb_compression_level
  5. Innodb 将 flush 刷盘操作从主线程移动到其他线程
  6. 默认用独立的表空间 ibd
  7. Undo Log 可以保存在独立的表空间

Partitioning

这里对分区做了下面的加强

  1. 最大分区数量增加到 8192
  2. 支持显示分区选择 比如: SELECT * FROM t PARTITION (p0, p1) WHERE c < 5

MySQL NDB Cluster

Mysql集群,在这个版本作为独立的产品发布

注意存储引擎不是默认的 innodb ,而是 NDB

Replication and logging

复制和日志记录

  1. 可以从远程服务器读取 binlog 参数: --read-from-remote-server, -R ; --raw
  2. 延迟复制 参数: CHANGE MASTER TO

Optimizer enhancements

优化器增强

  1. 就是在这里开始的,我们可以用 EXPLAIN 来查看 DELETE,INSERT,REPLACE,UPDATE等 DML 操作的执行计划。 在这之前,它只支持 SELECT 操作。
  2. 优化子查询
  3. 主机缓存

Configuration Changes

back_log

50

Autosized using max_connections

binlog_checksum

NONE

CRC32

--binlog-row-event-max-size

1024

8192

flush_time

1800 (on Windows)

0

innodb_autoextend_increment

8

64

innodb_buffer_pool_instances

1

8 (platform dependent)

innodb_checksum_algorithm

INNODB

CRC32 (changed back to INNODB in MySQL 5.6.7)

innodb_concurrency_tickets

500

5000

innodb_file_per_table

0

1

innodb_old_blocks_time

0

1000

innodb_open_files

300

Autosized using innodb_file_per_table,table_open_cache

innodb_stats_on_metadata

ON

OFF

join_buffer_size

128KB

256KB

max_allowed_packet

1MB

4MB

max_connect_errors

10

100

sync_master_info

0

10000

sync_relay_log

0

10000

sync_relay_log_info

0

10000

5.7

innodb

  1. 增加 DATA_GEOMETRY 类型来支持空间数据类型,以前是用 blob
  2. innodb 的缓存池 dump 和 load 加强 ,允许按百分比去存储缓存池中的页面 参数: innodb_buffer_pool_dump_pct 默认值是 25
  3. InnoDB 增加了对全文解析器插件的支持。
  4. 支持多线程来刷新缓冲池中的脏页面 内存数据页跟磁盘上数据页内容不一致,将内存页称为脏页
  5. 由于文件系统 The Fusion-io Non-Volatile Memory (NVM) 在 Linux 上提供了原子操作,这导致 innodb 的 doublewrite 变得冗余,所以在该文件系统上,会自动关闭 doublewrite
  6. innodb_buffer_pool_size 参数是动态的,允许您在不重启服务器的情况下调整缓冲池的大小
  7. InnoDB 支持使用 spatial 索引来索引空间数据类型
  8. 支持本地分区
  9. 默认行格式由 compact 改为 DYNAMIC

其他

一. 支持JSON

从MySQL 5.7.8开始,MySQL支持原生JSON类型。

震惊(居然还有这回事)

二. EXPLAIN 可以用来获取在命名连接中执行的可解释语句的执行计划

EXPLAIN [options] FOR CONNECTION connection_id;

三. 允许在某个时间点,有多个触发事件

之前:对于触发器事件(INSERT、UPDATE、DELETE)和操作时间(BEFORE、AFTER)的组合,一个表最多只能有一个触发器,即在某个触发时间点只能有一个触发事件

四. 多源复制

可将多个服务器的内容备份到一个服务器

8.0

突然发现每次更新都在加强这个 innnodb

innodb

  1. 可以通过 INNODB_CACHED_INDEXES 查看每个索引缓存在 InnoDB 缓冲池中的索引页数量
  2. 可以使用一个新的动态变量 innodb_deadlock_detect 来禁用死锁检测
  3. redo log 优化,可以并发地写到日志缓冲区
  4. 日志缓冲区的大小可以通过 innodb_log_buffer_size 动态调整
  5. undo log 不再存放在系统表中
  6. 支持原子性的 DDL , 确保操作完全成功或者失败
  7. 从 MySQL 8.0.20 开始,doublewrite 缓冲区存储在 doublewrite 文件中

其他

一. Json 增强

二. 默认值

可以为这些类型增加默认值 BLOB、TEXT、GEOMETRY 、 JSON

三. 优化器增强

  1. 支持隐藏索引
ALTER TABLE t1 ALTER INDEX i_idx INVISIBLE;
ALTER TABLE t1 ALTER INDEX i_idx VISIBLE;
  1. 索引支持降序排序

四. 支持窗口函数

五. 支持正则表达式

(还有这操作的 )

六. 备份锁

允许在线备份时使用 DML 语句


总结

看完这篇文章后,不知道小伙伴们会对哪个更新印象最深呢?

比如 4ye 对这几点有点小印象~

  1. 5.6全文索引,innodb 页的大小调整(4,8,16 KB)三档,独立表空间还有执行计划的加强,不仅仅select. 以及结尾那么大一个表格的参数
  2. 5.7 的 JSON,空间数据类型 DATA_GEOMETRY ,以及空间索引 spatial 的出现,还有doublewrite ,脏页面的优化 和 行格式 DYNAMIC 的出现(以前 compact )
  3. 8.0正则隐藏索引以及它的索引排序

对了 还有,开头的那两句~

innodb 就是从 5.5 这个版本开始成为 默认的存储引擎 引入了真 UTF8 ——> utf8mb4


>作者:4ye酱
链接:https://juejin.cn/post/6971697459332382751
来源:掘金

相关推荐

u盘制作启动盘后如何恢复原来的样子

可以通过U盘启动盘制作工具的恢复普通盘功能将制作了启动盘的U盘恢复为一个普通U盘,这类制作工具核心相同,都可以实现删除隐藏启动文件的功能,下面以电脑店启动盘制作工具为例:1、将U盘插入电脑,然后运行电...

xp系统安装版免费版华为版(windows xp 安装版)

1、点击主界面中的【设置】进入到设置界面,然后向下滑动即可找到【开发者选项】,点击进入。2、点击【开发者选项】右边的按钮打开此功能,然后在弹出的提示框中选择【确定】。值得注意的是,启用这个功能可能会导...

手机网页自动翻译插件(手机网页自动翻译插件免费版)

找到了吗你好;苹果自带浏览器添加书签按也是要占用手机内存的,自带浏览器的安装包太大,会影响手机运行的,你可以下载一个QQ浏览器。它的安装包很小,不影响手机运行,它使用的极速内核,有着神速一般的浏览体验...

0x0000007e(0X0000007E)

错误分析系统进程会生成错误,但是Windows错误处理器无法捕获它。蓝屏无法正常进入系统或无法正常运行,这通常是由软件或硬件故障引起的。原因有很多,原因很复杂,例如系统文件损坏,病毒感染,后台自启动程...

联想笔记本电脑键盘介绍图(联想笔记本电脑键盘功能基础知识解释图)

ESC键:另一个名称叫做逃逸键,在填用户名或者打错的时候使用ESC键,可以清理所有的框内内容,较为便利。Tab键:Tab键是Table(表格)的简写,所有也被人们称作表格键,在文本文档时,按这个键,光...

wifi万能钥匙正版下载(wifi万能钥匙下载最新版)

1、首先打开手机应用中心下载安装wifi万能钥匙。;;2、安装完成后,点击打开wifi万能钥匙即可使用。;具体使用...

好看电脑桌面壁纸高清(好看电脑桌面壁纸高清搞怪)

首先,在桌面点击右键,然后进入属性,然后进入显示,然后上面写着屏幕分辨率,再按照分辨率下载壁纸  以下为调整电脑桌面清晰度步骤:  1,启动电脑,来到桌面,在空白处,单击鼠标右键,去打开桌面右键菜单...

iso国际标准(ISO国际标准键盘)

6000iso流明相当于7500ansi流明。6000÷0.8等于7500ansi流明ANSI流明是美国的亮度标准,ISO流明是国际标准,目前普遍将ANSI流明和ISO流明按照1:0.8的比例换算,即...

win7家庭高级版和专业版(win7系统家庭高级版)

①如果你是自己用,不是在公司用,一般是用不出什么区别的,兼容性和性能上毫无区别,只是功能上有所取舍;②两者在高级安全性和商业部署上有所区别,专业版比家庭版多了Bitlocker(磁盘加密技术)、组策略...

win11怎么样(win11怎么样删除软件)

win11适合打游戏的。主要原因如下:1、win11的升级并不会丢失原本系统中的文件和软件,因此用户可以在升级后直接玩原本的游戏。2、win11虽然是一款新系统,但是在游戏性能的表现上已经有着非常好的...

adobe flash官方下载(adobe flash player完整版下载)

您可以从Adobe官网(https://get.adobe.com/flashplayer/)下载AdobeFlashPlayer最新版本,并在您的手机上安装它。Adobe宣布终止研发移动设备fl...

五笔打字字根表(金山五笔打字字根表)
五笔打字字根表(金山五笔打字字根表)

1区横起笔、G键:王旁青头兼五一;F键:土士二干十寸雨;D键:大三肆头古石厂;S键:木丁西边要无女;A键:工戈草头右框七。2区竖起笔、H键:目止具头卜虎皮;J键:日曰两竖与虫依;K键:口中两川三个竖;L键:田框四车甲单底;M键:山由贝骨下...

2025-11-10 21:55 liuian

u盘写保护打开方法(u盘写保护打不开怎么把它格式化)

1.查看U盘上是否有写保护开关,打开开关(通常写保护开关在U盘的侧面是一个滑块)。2.尝试重新插入U盘读取数据。解决方案二:运行磁盘检测修复命令1.使用组合键“Win+R”,唤出运行页,在对话框中...

微软密钥在哪里找(bitlocker万能恢复密钥)

如果您使用的是MicrosoftOffice365,密钥激活的账户是免费订阅的,因此不需要查看。您可以通过以下步骤免费获取Office365:1.访问Microsoft官网(https...

大学生一般买什么笔记本电脑

回答:联想小新Air15锐龙版性能轻薄本15.6英寸全面屏轻薄笔定位:轻薄本配置:处理器(R7-5700U)、显卡(集显)、分辨率(1920×1080)、内存(16G)、尺寸(15.6英寸)评价:20...