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

一. server参数默认值设置的变化
http://dev.mysql.com/doc/refman/5.6/en/server-default-changes.html
二. innodb特性的变化以及增强
1.全文索引(full-text search):https://dev.mysql.com/doc/refman/5.6/en/innodb-fulltext-index.html
2.支持 online DDL:https://dev.mysql.com/doc/refman/5.6/en/innodb-online-ddl.html
3.独立表空间的.ibd文件可以在建表时指定目录: http://dev.mysql.com/doc/refman/5.6/en/tablespace-placing.html
4.导入和导出表空间: http://dev.mysql.com/doc/refman/5.6/en/tablespace-copying.html
5. 新增参数innodb_page_size设置页大小(4k,8k,16k): https://dev.mysql.com/doc/refman/5.6/en/innodb-parameters.html
6.缓冲池flush算法增强:http://dev.mysql.com/doc/refman/5.6/en/innodb-performance.html
7.支持使用nosql api访问innodb表(整合memcached):http://dev.mysql.com/doc/refman/5.6/en/innodb-memcached.html
8.支持read-only事务:http://dev.mysql.com/doc/refman/5.6/en/innodb-performance.html
9.undo log可独立出系统表空间:http://dev.mysql.com/doc/refman/5.6/en/innodb-performance.html
10.redo log最大增至512G。http://dev.mysql.com/doc/refman/5.6/en/innodb-redo-log-size-increase.html
11.innodb支持read_only介质,如DVD,参数--innodb-readonly http://dev.mysql.com/doc/refman/5.6/en/innodb-parameters.html
12.innodb内部性能增强:包括将flushing操作独立出主线程,减少核心互斥锁,可设置多个清除线程,减少大内存系统的资源争夺。
13.检测死锁算法增强,在非递归情况下死锁检测,死锁信息可以记录到 error 日志,方便分析。
14.buffer pool预热:http://dev.mysql.com/doc/refman/5.6/en/innodb-performance.html
三. 分区的限制(Restrictions and Limitations on Partitioning)
1.最大分区个数增为8192,包括分区和子分区。(Prior to MySQL 5.6.7, the maximum possible number of partitions for a given table not using the
NDBstorage engine was 1024)2.支持分区表的分区(或子分区)与非分区表交换:ALTER TABLE ... EXCHANGE PARTITION
3.查询支持显式的分区语句如 SELECT * FROM t PARTITION (p0, p1) WHERE c < 5 :http://dev.mysql.com/doc/refman/5.6/en/partitioning-selection.html
4.简化分区锁增强性能:http://dev.mysql.com/doc/refman/5.6/en/partitioning-limitations-locking.html
四. 复制功能的增强
1.新增GTID复制:http://dev.mysql.com/doc/refman/5.6/en/replication-gtids.html
2.新增binlog_row_image:http://dev.mysql.com/doc/refman/5.6/en/replication-options-binary-log.html 只记录row格式下所用字段的修改(而不是像以前一样记录全部列),节省空间等资源。
3.master.info和relay-log.info支持存储在表中。
4.mysqlbinlog命令支持binlog备份(备份后仍为二进制的binlog而不是文本)http://dev.mysql.com/doc/refman/5.6/en/mysqlbinlog-backup.html
5.支持延时复制:在change master to中增加MASTER_DELAY选项。
6.有多个网络接口的slave可指定使用其中一个:在change master to中增加MASTER_BIND。
7.新增 log_bin_basename:http://dev.mysql.com/doc/refman/5.6/en/replication-options-binary-log.html relay_log_basename:http://dev.mysql.com/doc/refman/5.6/en/replication-options-slave.html
8.支持基于schema级别的多线程复制。
9.binlog支持crash-safe。
五. 查询优化器
1.limit优化:http://dev.mysql.com/doc/refman/5.6/en/limit-optimization.html
2.MRR优化(Multi-Range Read):http://dev.mysql.com/doc/refman/5.6/en/mrr-optimization.html
3.ICP优化(Index Condition Pushdown):http://dev.mysql.com/doc/refman/5.6/en/index-condition-pushdown-optimization.html
4.explain语句支持 insert、delete、update、replace语句,并且支持json格式。
5.新增连接算法BKA(Batched Key Access):http://dev.mysql.com/doc/refman/5.6/en/bnl-bka-optimization.html
6.子查询优化:包括物化和半连接优化等特性。
7. 面向开发者的优化器追踪特性。
六. 数据类型
1.time、datetime、timestamp类型支持微妙(小数点后6位);表格式的slowlog将不会被截断。
2.datetime类型支持DEFAULT CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP。
3.增加explicit_defaults_for_timestamp系统变量明确timestamp默认值。
4.year(2)被限制,将转换成year(4)。
七. 更改的参数
1. --log和log移除,用 --general_log 和 --general_log_file=file_name 替换。
2. log_slow_queries移除,只有slow_query_log。
3. --one-thread系统参数移除,用 --thread_handling=no-threads 替换。
4. --safe-mode 系统参数移除。
5. --skip-thread-priority系统参数移除。
6. --table-cache 用 table_open_cache 替换。
7. --init-rpl-role、--rpl-recovery-rank、rpl_recovery_rank、Rpl_status移除。
8. engine_condition_pushdown系统变量移除,engine_condition_pushdown表示并入optimizer_switch 变量。
9. have_csv, have_innodb, have_ndbcluster, have_partitioning移除,用show engines代替。
10. sql_big_tables移除,用big_tables 代替。
11. sql_low_priority_updates被low_priority_updates 代替。
12. sql_max_join_size被max_join_size 代替。
13. max_long_data_size被max_allowed_packet 代替。
14. FLUSH MASTER 和 FLUSH SLAVE语句移除,使用reset master和reset slave代替。
15. slave start和slave stop语句移除,用start slave和stop slave代替。
16. SHOW AUTHORS 和 SHOW CONTRIBUTORS 语句移除。
17. set语句的OPTION 和nd ONE_SHOT移除。
http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html
八. MySQL Performance Schema 增强
1. Statements/execution stages - 找出消耗资源热点SQL
2. Table and Index I/O : 找出哪些表和索引引起负载过高
3. Table Locks : 哪些表引起竞争
4. Users/Hosts/Accounts :找出消耗资源最多的Users/Hosts/Accounts
5. Network I/O : 网络还是应用程序? 会话闲置多久?
6. 通过 thread, user, host, account, object聚合总结。
以上特性在mysql官网上全部可以找到、
参考文章
http://blog.csdn.net/yueliangdao0608/article/details/21230627
总结一下关于mysql 5.6 新特性的更多相关文章
- [转帖 ]MySQL 5.7 新特性 JSON
MySQL 5.7 新特性 JSON 的创建,插入,查询,更新 作者: 我不是鱼 (2016-08-31 16:13)分类: MySQL 标签: MySQL JSON MySQL JSON 应用 ...
- Mysql 8.0 新特性测试
Mysql 8.0 新特性测试 Role MySQL8.0版本添加了role特性,role是一种逻辑概念是权限的集合,可以将一个或以上的权限赋予给role,再将role赋给user.Oracle,Po ...
- MySQL 8.0 新特性梳理汇总
一 历史版本发布回顾 从上图可以看出,基本遵循 5+3+3 模式 5---GA发布后,5年 就停止通用常规的更新了(功能不再更新了): 3---企业版的,+3年功能不再更新了: 3 ---完全停止更新 ...
- MySQL 5.7新特性之Generated Column(函数索引)
MySQL 5.7引入了Generated Column,这篇文章简单地介绍了Generated Column的使用方法和注意事项,为读者了解MySQL 5.7提供一个快速的.完整的教程.这篇文章围绕 ...
- 初识 MySQL 5.6 新特性、功能
背景: 之前介绍过 MySQL 5.5 新功能.参数,现在要用MySQL5.6,所以就学习和了解下MySQL5.6新的特性和功能,尽量避免踩坑.在后续的学习过程中文章也会不定时更新. 一:参数默认值的 ...
- MySQL 5.7新特性之generated column
MySQL 5.7引入了generated column,这篇文章简单地介绍了generated column的使用方法和注意事项,为读者了解MySQL 5.7提供一个快速的.完整的教程.这篇文章围绕 ...
- MySQL 5.6新特性 -- Multi-Range Read
如果基表很大,数据没有被缓存,在二级索引上使用范围扫描读取行可能会导致大量的随机磁盘访问.使用Multi-Range Read新特性,mysql可以减少对磁盘的随机读的次数:首先,mysql只是扫描索 ...
- MySql 5.7 新特性概览
安全的提升 1.1 在Mysql 8版本中,caching_sha2_password 是一个缺省的认证插见.5.7 版本的客户端支持 caching_sha2_password 的客户端认证. 1. ...
- MySQL 5.7新特性介绍
本文是基于MySQL-5.7.7-rc版本,未来可能 还会发生更多变化. 1.即将删除的特性1.1.InnoDB monitoring features,详见:WL#7377(访问地址:http:// ...
随机推荐
- asp.net获取当前网址url【转】
设当前页完整地址是:http://www.jb51.net/aaa/bbb.aspx?id=5&name=kelli "http://"是协议名 "www.jb5 ...
- 一个可用来记录Isilon各个节点的CPU,网络,磁盘性能的命令
通过查看命令isi statistics system的帮助信息,拼出了下面的命令. isi statistics system list --nodes=all --degraded --forma ...
- CSS布局中一个简单的应用BFC的例子
什么是BFC BFC(Block Formatting Context),简单讲,它是提供了一个独立布局的环境,每个BFC都遵守同一套布局规则.例如,在同一个BFC内,盒子会一个挨着一个的排,相邻盒子 ...
- Backbone.js 中使用 Model
前面几篇 Backbone.js 的例子中有使用到 template, 及数据的填充,其实这已经很接近 Model 了.现在来学习怎么创建自己的 Model 类,并简单的使用.Backbone.js ...
- git版本还原
本地还原 在确认需要进行版本还原以后, 打开GIT BASH 输入: git reset --hard ad76ebf5ba8fb12bc38300ee99db478b332c1f7b 此操作成功以后 ...
- svn commit --cl app 时手动输入提交的注释,而不是在 -m 'comments here'这里输入
原来只需要,提交的时候不指定 -m ,也不指定 -F就可以了,提交之前,svn会自动弹出编辑框来,可以修改信息. https://stackoverflow.com/questions/1746891 ...
- (转)Unity3D工程版本管理方案
自:http://blog.dou.li/unity3d%E5%B7%A5%E7%A8%8B%E7%89%88%E6%9C%AC%E7%AE%A1%E7%90%86%E6%96%B9%E6%A1%88 ...
- 如何实现json字符串和 BsonDocument的互相转换
String to BsonDocument string json = "{ 'foo' : 'bar' }"; MongoDB.Bson.BsonDocument docume ...
- Visual stuido 项目路径的奇怪问题
从别人那里以zip的形式接受了一个solution, 然后在接收目录解压缩,然后剪切到其他的目录.此时报错,说找不到项目文件,看Visual studio 寻找的详细路径,发现它还是到解压缩的那个目录 ...
- 如何用Docker建立一个Node.js的开发环境
建立一个文件夹 用管理员身份打开powershell. 在文件夹下面运行npm init, 根据提示填入信息,以便产生一个package.json文件. 在文件中加入需要的dependencies ...