共计 908 个字符,预计需要花费 3 分钟才能阅读完成。
本篇文章为大家展示了 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 层做的性能优化和新特性有哪些,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注丸趣 TV 行业资讯频道。