mysql5.7有哪些新特性

mysql5.7新特性

1,online  alter table
5.7版本支持对索引的重命名
alter table tb_name rename index old_index_name to new_index_name;

varchar 列的大小在线调整的方法。
alter table t1 algotithm=inplace,change column meg1 meg1 varchar(255);

2,innodb_buffer_pool online change 
5.7.5之后为了支持在线动态调整innodb_buffer的大小,引入了chunk的概念,每个chunk大小为128MB,buffer_pool以innodb_buffer_pool_chunk_size为单位进行动态增大和缩小,通过设置动态参数innodb_buffer_pool_size来修改buffer pool的大小,此过程不会消耗太高的代价,从大到小需要释放内存

另外innodb_buffer_pool_size是innodb_buffer_pool_chunk_size*innodb_buffer_pool_instances的倍数;

还可以通过新增参数innodb_buffer_pool_resize_status来监控buffer pool 的rsize过程

 

3,innodb_buffer_pool_dump 和load的增强
innodb_buffer_pool的dump和load操作加强是通过设置新增参数innodb_buffer_pool_dump_pct实现的,即dump的百分比,只导出最热的那部分数据的page,当系统繁忙时,可以通过innodb_io_capacity参数来现在buffer pool load的过程。

 

4,innodb临时表的优化
临时表不在记录redo log,mysql5.7把临时表的数据从系统表空间中抽离处理啊,形成了自己的独立表空间,并且把临时表的相关检索信息保存在系统信息表中information_schema库下innodb_temp_table_info表中,目前还不能定义临时表空间文件的存放路径,只能与innodb_data_home_dir一致。
读里表空间文件名ibtmp1,默认大小12MB。

5,page clean的效率的提升
page cleaner线程不在只有一个,可以通过新增的参数innodb_page_cleaners来指定pagecleaner线程的数量,提高赃页的刷新效率:

6,undo log自动清除
自动新增的innodb_undo_log_truncate参数,当 undo log的大小超过innodb_max_undo_log_size参数指定的最大值时,undo log就会自动清除,以防止磁盘空间产生消耗。

7,sys 库性能的增强

sys schema包含一系列视图,函数,存储过程。数据来源performance_schema,目的是降低查询performance_schema的复杂度。

sys库下有两种表:

以字母开头的:提供更好的阅读体验;

以x$开头的:提供了原始数据,适合工具采集。

查看数据库未使用的索引:

查看I/O使用最多的表:

查看实例消耗的内存:

查看每个库占用多少bufer pool

前5位占用buffer pool最多的表:

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值