--MYSQL 8.0X 到底都进步了哪些 8.011--8.013

2021-03-14 00:00:00 功能 专区 版本 内存 有了

MYSQL 的8.0的升级的速度和之前5.X 的升级相比,的确是日产阳光和日产的GTR之间的区别。


从2018年-04-19日的MYSQL 8.011 到 MYSQL 8023 2021-01-18 ,和马上就要release的  8.025.  14的版本的更新在2年多的时间。这里分几期来大致的分析这些版本到底都有那些主要的进步,方便从5.X  到 8的众多版本的选择.


8.011 


字符集UTF8MB4 成为MYSQL 标准的功能,UTF8退出了历史的舞台。

新的log_status 提供了完善的信息为在线备份工具提供了必要的信息,而不必在备份的时候在进行相关资源的锁定。


log_status 


在8.011 上中提出了log_status的功能在performance_schema,log_status提供了相关的在备份中需要进行锁定的资源,当查询log_status表时,服务器能够阻塞日志记录,在查询后在释放锁资源,涂总可以看到,其中当前服务器执行的gtid, 以及BINLOG 文件和pos的位置等等信心,和数据库的checkpoint的信息.


增加了ibd2sid 工具提供了INNODB 序列化字典信息的打印. 通过设置show_create_table_verbosity 变量展示一个表中的row format 之show create table  是不会打印表的 ROW_FORMAT  


这个值在8.012修改了,从16MB 到默认值 128MB

  --slave-pending-jobs-size-max, 从8.012 来slave_parallel_workers 乘以 slave-pending-jobs-size-max 真用的内存比之前的版本要多,这点要注意,分配更多的内存. 


同时在MYSQL 8.012 中优化了filesort 这个功能,优化后的 filesort 设置的值和使用的值不再是一个固定化的值,而是设置的值为MAX ,内存也是一点点的分配, 这样对内存的使用的合理性有了更好的安排.

在这个版本中explain 也有了变化,之前explain 仅仅用于 select 语句,而这个版本我们已经可以对于DML 语句进行explain的输出了.


注意这个版本还增加了MYSQL的 The Rewriter Query Rewrite Plugin, 功能类似某些中间件的SQL 重写的功能.


SQL 语句方面MYSQL 8.012允许在使用rollup 功能的情况下,使用 DISTINCT,也允许使用 ORDER BY 的情况下使用rollup 方式进行查询.


8.012 在对小于100KB的LOB 文件的更新上做了优化,之前对于LOB的数据修改是整体的,而现在对于LOB文件的修改可以占用的内存更少.


8.0.13

相关文章