随笔,真的随笔,以后理解得更深了再修改。
 
Index Condition Pushdown
更多的让存储引擎去处理Where语句中的条款,避免返回无关字段数据等;
 
Multi-Range Read
对于第二索引来说,它指向的数据未必是在同一个块里,所以查询会乱序,不一定高效。MRR会检索一个查询中的多个范围数据,将它们同部排序后,变成一个大范围的顺序IO,再去读,从而提高效率。
 
File Sort Optimization
对于有order by non_indexed_column和limit x组合语句的查询,如果X条结果可以放在排序缓冲区中,就会提升排序性能;
 
 
Innodb Improvements
Persistent Optimizer Stats
用户可以控制Innodb对每个索引做采样的数据集的大小,以及是否持久化这些统计数据。持久化后即使重启,统计仍在,因而提升性能和有更一致的行为。
 
New INFORMATION_SCHEMA tables
因为使用SQL语句查询比分析show status的文本更方便,所以增加了更多的这样的表。
  • Metrics Tables:innodb_metrics,更多和更丰富的资源和性能监控;
  • System Tables:可以查询Innodb的内部数据字典;
  • Buffer Pool Information Table:显示BP页信息以调优大内存或大压力系统;
 
Split Kernel Mutex
之前是由一个单独的mutex来控制进入Innodb核心操作的并发的,现在改进成了拆成多个mutex以及读写锁,以减少竞争;
 
 
Multi-Threaded Purge
最初Purge操作是在主线程中做的,所以常和其它操作冲突。在5.5中挪到了单独的Purge线程里。现在可以配多个线程,以使Purge多张表时更有效。
 
Separate Flush Thread
之前在主线程中,现在Flush操作也单拎出来做一个线程了。
 
Pruning the Innodb Table Cache
在打开很多表时会造成系统负担,使用了LRU算法来挑出合适的表关掉。
 
 
NoSQL Interface via Memcached
直接使用Memcache API来访问Innodb数据。简化了接口,持久化了Memcache的数据,省了MC的内存。
 
Scalability Improvements
Partition Table操作更方便,效率更高。
  • Explicit Partition Selection:直接指定处理查询的分区;
  • Import/Export for Partitioned Tables:快速将一个分区表的数据和未分区表的数据做切换,从而完成快速导入分区数据;
 
Replication Improvements:
  • Optimized Row-Based Replication:在指定了主键或明确的字段时,只复制相关的字段的Before和After数据,以减少各方面相关开销;
  • Multi-Threaded Slaves:从库的execution thread改成了多个;多线程基于database名来分派任务从而提高并行度;
  • Crash Safe Slaves:对如Innodb这种支持事务的引擎有效。Slave重启后会自动重启中断的DML操作,不需要象现在这样让DBA手动去重设master.info和relaylog.info来使复制继续;
  • Replication Checksums:检查数据损坏,并返回错误,以防Slave自己数据坏掉,从而提升数据完整性。校验和基于二进制日志、Relay Log及单独的Event。这个特性可以指定某个Slave来应用。
  • Time-Delayed Replication:可以指定某些Slave延缓执行操作,以避免误操作。最多可以68年。
  • Informational Log Events:使用Row-based复制时,把用户的操作也写进Binlog,这样也会被复制到从库,从而提升可读性;
  • Remote Binlog Backup:不需从库就可以备份Binlog;
  • Server UUIDs:自动生成UUID,方便各种监控工具获取信息。可以在show slave status命令中得到。对大规模集群很有效。
 
Instrumentation and Diagnostic Improvements via performance-schema
  • Reduced Overhead:代码优化了;
  • Table I/O and Instrumentation:setup_object让DBA可以分析应用是如何产生IO请求的。
  • Table Locks Instrumentation:仍是setup_object表,发现访问最密集的表和其它对象相关的索引;
  • Session/User Level Instrumentation:setup_actors表,监控某个用户或连接产生的压力;
  • Global Performance Metric Summaries:方便DBA写脚本做监控,可以分类,按线程,按对象,按instrumentation point等
  • Table/Index I/O Summary:setup_object表,发现访问最热的表和索引;
  • Table Lock Wait Summary:积累锁相关数据;
  • Statement Level Instrumentation:方便DBA针对单个的Statement做监控和分析;
  • Show Contents of Host Cache - centralized logging of connection errors:众望所归下,集中打印连接错误。方便分析大集群中的错误。
 

Mysql 5.6 新特性的更多相关文章

  1. [转帖 ]MySQL 5.7 新特性 JSON

    MySQL 5.7 新特性 JSON 的创建,插入,查询,更新 作者: 我不是鱼 (2016-08-31 16:13)分类: MySQL   标签: MySQL JSON MySQL JSON 应用 ...

  2. Mysql 8.0 新特性测试

    Mysql 8.0 新特性测试 Role MySQL8.0版本添加了role特性,role是一种逻辑概念是权限的集合,可以将一个或以上的权限赋予给role,再将role赋给user.Oracle,Po ...

  3. MySQL 8.0 新特性梳理汇总

    一 历史版本发布回顾 从上图可以看出,基本遵循 5+3+3 模式 5---GA发布后,5年 就停止通用常规的更新了(功能不再更新了): 3---企业版的,+3年功能不再更新了: 3 ---完全停止更新 ...

  4. MySQL 5.7新特性之Generated Column(函数索引)

    MySQL 5.7引入了Generated Column,这篇文章简单地介绍了Generated Column的使用方法和注意事项,为读者了解MySQL 5.7提供一个快速的.完整的教程.这篇文章围绕 ...

  5. 初识 MySQL 5.6 新特性、功能

    背景: 之前介绍过 MySQL 5.5 新功能.参数,现在要用MySQL5.6,所以就学习和了解下MySQL5.6新的特性和功能,尽量避免踩坑.在后续的学习过程中文章也会不定时更新. 一:参数默认值的 ...

  6. MySQL 5.7新特性之generated column

    MySQL 5.7引入了generated column,这篇文章简单地介绍了generated column的使用方法和注意事项,为读者了解MySQL 5.7提供一个快速的.完整的教程.这篇文章围绕 ...

  7. MySQL 5.6新特性 -- Multi-Range Read

    如果基表很大,数据没有被缓存,在二级索引上使用范围扫描读取行可能会导致大量的随机磁盘访问.使用Multi-Range Read新特性,mysql可以减少对磁盘的随机读的次数:首先,mysql只是扫描索 ...

  8. MySql 5.7 新特性概览

    安全的提升 1.1 在Mysql 8版本中,caching_sha2_password 是一个缺省的认证插见.5.7 版本的客户端支持 caching_sha2_password 的客户端认证. 1. ...

  9. 总结一下关于mysql 5.6 新特性

    一直断断续续的看一些mysql特性,今天总结一下,以下是列表,网址 http://mariadb.org/ (也是类似的特性), http://mysql.com/ 最近在看关于mysql新特性的一些 ...

  10. MySQL 5.7新特性介绍

    本文是基于MySQL-5.7.7-rc版本,未来可能 还会发生更多变化. 1.即将删除的特性1.1.InnoDB monitoring features,详见:WL#7377(访问地址:http:// ...

随机推荐

  1. 使用Django创建简易Blog

    网上看了个例子,但是自己却运行不同,最后终于知道了原因,记录下来.原来没有给settings.py里的INSTALLED_APPS添加blog.就像这样: 这是一个手把手的实例教程,本来学习笔记一样, ...

  2. 以todomvc为例分析knockout、backbone和angularjs

    一.整体结构 项目github地址https://github.com/tastejs/todomvc/ 排除通用的css样式文件和引用的js库文件,仅看html和js 1.1 knockoutjs版 ...

  3. Knockout获取数组元素索引的2种方法,在MVC中实现

    原文:Knockout获取数组元素索引的2种方法,在MVC中实现 在遍历数组.集合的时候,通常要获取元素的索引,本篇体验使用Knockout获取索引的2种方法. 假设有这样的一个模型: namespa ...

  4. Knockout应用开发指南 第三章:绑定语法(2)

    原文:Knockout应用开发指南 第三章:绑定语法(2) 7   click 绑定 目的 click绑定在DOM元素上添加事件句柄以便元素被点击的时候执行定义的JavaScript 函数.大部分是用 ...

  5. Java调用摄像头截图

    使用webcam-capture替换JMF调用摄像头 最近有个需要通过java调用摄像头,并截图的需求,在网上找了下资料,大部分是用一个叫jmf的库,但是jmf已经几百年没有更新,用起来各种问题.后来 ...

  6. java中线程机制

    java中线程机制,一开始我们都用的单线程.现在接触到多线程了. 多线性首先要解决的问题是:创建线程,怎么创建线程的问题: 1.线程的创建: 四种常用的实现方法 1.继承Thread. Thread是 ...

  7. Quartz时间配置

    格式: [秒] [分] [小时] [日] [月] [周] [年]  序号 说明  是否必填  允许填写的值 允许的通配符  1  秒  是  0-59    , - * /  2  分  是  0-5 ...

  8. ecshop中getAll ,getOne ,getRow的区别

    ecshop的数据库抽象层其实就是在模仿adodb $GLOBALS['db']->getAll($sql);//以二维关联数组返回所有数据 $GLOBALS['db']->getOne( ...

  9. hdu1869六度分离,spfa实现求最短路

    就是给一个图.假设随意两点之间的距离都不超过7则输出Yes,否则 输出No. 因为之前没写过spfa,无聊的试了一下. 大概说下我对spfa实现的理解. 因为它是bellmanford的优化. 所以之 ...

  10. HDU 4982 Goffi and Squary Partition(推理)

    HDU 4982 Goffi and Squary Partition 思路:直接从全然平方数往下找,然后推断是否能构造出该全然平方数,假设能够就是yes,假设都不行就是no.注意构造时候的推断,因为 ...