MySQL5.7在InnoDB层做的性能优化和新特性有哪些

本篇文章为大家展示了MySQL5.7在InnoDB层做的性能优化和新特性有哪些,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

性能优化:
事务:事务对象池;优化读写事务链表扫描为Memcpy; 移除只读事务链表;Cache Read view; 隐式锁转换优化以减少大锁持有时间; 事务优先级;
临时表:独立临时表表空间;独立undo;不记录redo; 不做fsync; 使用innoDB临时表作为优化器的中间结果表
Buffer Pool: 多个page cleaner线程;更高效的flush策略;
Redo Log: 通过padding修复read-on-write的问题;认CRC32 checksum; 增加日志格式的版本信息;
Memcached: 修复一系列的性能瓶颈
索引锁,增加SX锁类型,允许索引分裂时的读负载;
TruncATE操作通过文件日志保证原子性
Index Rename及修改varchar长度可以立刻完成
自底向上的索引创建,效率更高
AHI分区

新特性:
分区表: 下推到引擎层,可以减少内存分配,并为未来的并发查询、外键和全文索引支持打下基础; 支持IMPORT/EXPORT
General tablespace: 支持多个表存储到一个Ibd文件
Buffer pool: 可以在线resize
Undo: 在打开独立undo表空间时,支持undo文件的truncate操作
更大的page size,开始支持32k及64k的page
Spatial Index/GIS:支持更完整的GIS特性;InnoDB R-TREE实现
Virtual Column: 支持虚拟列及在虚拟列上创建索引
数据文件加密
全文索引: 对中文更友好的分词插件
其他: transparent page compression; Sandisk/FusionIO Atomic Writes; 允许更大的index prefix
Performance schema: 监控内存分配;监控DDL执行过程;

上述内容就是MysqL5.7在InnoDB层做的性能优化和新特性有哪些,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程之家行业资讯频道。

相关文章

这篇文章主要介绍“hive和mysql的区别是什么”,在日常操作中...
这篇“MySQL数据库如何改名”文章的知识点大部分人都不太理解...
这篇文章主要介绍“mysql版本查询命令是什么”的相关知识,小...
本篇内容介绍了“mysql怎么修改字段的内容”的有关知识,在实...
这篇文章主要讲解了“mysql怎么删除unique约束”,文中的讲解...
今天小编给大家分享一下mysql怎么查询不为空的字段的相关知识...