MySQL 5.7 新时代

《MySQL 5.7 新时代》

内容来源:2017年2月26日,叶金荣在“OSC源创会福州站”进行《MySQL 5.7新时代》演讲分享。IT大咖说作为独家视频合作方,经主办方和讲者审阅授权发布。

阅读字数:1132 | 4分钟阅读

《MySQL 5.7 新时代》

摘要

MySQL 5.7版本新增了很多特别实用的功能,截止目前已经发布5.7.17版本,也越来越成熟了,而且Group Replication也GA了。就让我们一起来看看MySQL 5.7版本的新时代,功能为我们带来什么变化。

嘉宾演讲视频地址:t.cn/RK7Ncl0

MySQL5.7新气象

2013.4.23发布了MySQL5.7.1,距今已有4年了。它最主要的几个特性,一是性能上提升、InnoDB方面的性能提升,还有复制极大增强,以及查询优化器开始支持基于代价的规则。

并原生支持JSON。

Performance_Schema增加了众多信息。

新增sys schema,管理更方便了。

安全性提升。

GIS增强。

性能增强

《MySQL 5.7 新时代》

《MySQL 5.7 新时代》

这是5.7和5.5和5.6的性能对比,可以看到5.7的性能强悍多了,尤其是在高并发场景下。

优化器增强

5.7版本在查询过程中可以增加很多关键字,避开某些执行计划方面的坑。

InnoDB引擎

最瞩目的无疑是可以在线修改InnoDB Buffer Pool,由小改大几乎没有影响,由大改小只需要释放部分内存,影响也不大,可做到秒级完成。

InnoDB Buffer dump and load增强。

Temporary table增强。5.7版本InnoDB的临时表可以单独放在自己的临时表空间里,此外临时表不会再记录redo。

Online DDL增强,在线增加VARCHAR列长度。在不跨越255字节长度的前提下,可以把字节数直接进行在线调整。增加VARCHAR长度几乎无额外代价。

InnoDB Monitor取消innodb_xx_monitor机制,改成另外两个选项控制。

《MySQL 5.7 新时代》

支持更多page_cleaner线程提升purge效率。

表空间文件迁移增强,增加对分区表空间文件支持。

自动检测设备是否支持原子写,确认后关闭double writebuffer。

索引更新效率提升3倍以上。

InnoDB表分区性能提升,尤其是在有大量分区情况,且内存消耗更少。

支持spatial indexes,检索更精确。

透明data page压缩,压缩比变化不大,但读取效率高多了。(尤其是在慢速I/O设备上)

MySQL复制

真正实现多线程并发复制。

多源复制。把多个主服务器上的数据复制到从服务器上,这样的好处就是可以做到数据汇总,在数据分析业务场景中非常实用,也可以提高服务器资源利用率。

复制性能提升。减少master上的dump thread并发锁,提高并发率。

半同步复制更可靠更灵活。接收、发送信号线程分离(串行变并行),提高复制效率。

组复制类似PXC架构,可以实现多节点同时写入,同时提供读写均衡。

《MySQL 5.7 新时代》

复制管理更方便。无需完全停止所有SLAVE线程即可在线执行CHANGE MASTER TO。可在线修改REPLICATION FILTER规则。执行SHOW SLAVE STATUS无锁,不再被阻塞。

Mysqlbinlog解析binlog同时支持rewrite规则。

PERFORMANCE_SCHEMA

《MySQL 5.7 新时代》

内存统计视图有助于更快理解内存分配情况,以及找到内存泄露原因。

通过事务相关图,可以看到事务延迟,事务隔离级别,是否自动提交以及GTID信息。

MySQL复制相关图可以看到复制相关信息,可以取代SHOW SLAVE STATUS。

SYS Schema

从SYS Schema可以快速获取锁等待、内存分配和SQL统计。

查看I/O读写最多的文件。

查看热门SQL top10。

安全性

数据库安全增强。

初始化时采用随机密码。

只创建root@localhost账号,再也没有匿名账号。

不创建test库。

设置密码有效期,过期不予连接。

密码过期或首次登录需要设置新密码。

今天的分享到此结束,谢谢大家!


推荐文章

近期活动

《MySQL 5.7 新时代》

原文地址:t.cn/RK70Lx5

    原文作者:MySql
    原文地址: https://juejin.im/post/595dca74f265da6c21535d21
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞