mysql5.6新特性总结

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 一. server参数默认值设置的变化http://dev.mysql.com/doc/refman/5.6/en/server-default-changes.html二. innodb增强1.全文本搜索(full-text search)。

一. server参数默认值设置的变化
http://dev.mysql.com/doc/refman/5.6/en/server-default-changes.html

二. innodb增强
1.全文本搜索(full-text search)。
2.支持online DDL。
3.独立表空间的.ibd文件可以在建表时指定目录:
http://dev.mysql.com/doc/refman/5.6/en/tablespace-placing.html
4.导入和导出表空间:copy文件的方式比mysqldump快好多。
http://dev.mysql.com/doc/refman/5.6/en/tablespace-copying.html
5. 新增参数innodb_page_size设置页大小。
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.优化器统计持续化:重启不丢失。
http://dev.mysql.com/doc/refman/5.6/en/innodb-performance.html
9.支持read-only事务:
http://dev.mysql.com/doc/refman/5.6/en/innodb-performance.html
10.undo log可独立出系统表空间:
http://dev.mysql.com/doc/refman/5.6/en/innodb-performance.html
11.redo log最大增至512G。
http://dev.mysql.com/doc/refman/5.6/en/innodb-redo-log-size-increase.html
12.innodb支持read_only介质,如DVD,参数--innodb-readonlyhttp://dev.mysql.com/doc/refman/5.6/en/innodb-parameters.html
13.INFORMATION_SCHEMA新增相关字典表若干。
14.innodb内部性能增强:包括将flushing操作独立出主线程,减少核心互斥锁,可设置多个清除线程,减少大内存系统的资源争夺。
15.检测死锁算法增强。在非递归情况下死锁检测:死锁信息可以记录到 error 日志,方便分析。
16.buffer pool预热:
http://dev.mysql.com/doc/refman/5.6/en/innodb-performance.html

三. 分区增强
1.最大分区个数增值8192,包括分区和子分区。
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
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)。

七. Host cache增强
1.新增Connection_errors_xxx
http://dev.mysql.com/doc/refman/5.6/en/server-status-variables.html
系列状态参数。
2.新增host_cache_size系统变量。

八. 删除的特性
1. --log和log移除,用 --general_log 和 --general_log_file=file_name 替换。
http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html
http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html
2. log_slow_queries移除,只有slow_query_log。
3. --one-thread系统参数移除,用 --thread_handling=no-threads 替换。
http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html
4. --safe-mode 系统参数移除。
5. --skip-thread-priority系统参数移除。
6. --table-cache移除,用 table_open_cache 替换。
http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html
7. --init-rpl-role、--rpl-recovery-rank、rpl_recovery_rank、Rpl_status移除。
8. engine_condition_pushdown系统变量移除,engine_condition_pushdown表示并入optimizer_switch 变量。
http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html
9. have_csv, have_innodb, have_ndbcluster, have_partitioning移除,用show engines代替。
10. sql_big_tables移除,用big_tables 代替。
http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html
11. sql_low_priority_updates被low_priority_updates 代替。
http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html
12. sql_max_join_size被max_join_size 代替。
http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html
13. max_long_data_size被max_allowed_packet 代替。
http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html
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移除。

九. 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聚合总结。

具体信息请阅读mysql5.6手册:http://dev.mysql.com/doc/refman/5.6/en/index.html

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
2月前
|
存储 SQL 关系型数据库
MySQL相关(五)- 事务四大特性及隔离级别的详细介绍
MySQL相关(五)- 事务四大特性及隔离级别的详细介绍
28 0
|
2月前
|
存储 SQL 关系型数据库
MySQL 事务的 ACID 特性
MySQL事务是什么,**它就是一组数据库的操作,是访问数据库的程序单元,事务中可能包含一个或者多个 SQL 语句。这些SQL 语句要么都执行、要么都不执行。**我们知道,在MySQL 中,有不同的存储引擎,有的存储引擎比如MyISAM 是不支持事务的,所以说**MySQL 事务实际上是发生在 存储引擎部分**。
40 0
MySQL 事务的 ACID 特性
|
4月前
|
SQL 关系型数据库 MySQL
MySQL5.7 group by新特性报错1055的解决办法
MySQL5.7 group by新特性报错1055的解决办法
|
4月前
MySQL8.0新特性之公用表表达式学习
公用表表达式(或通用表表达式)简称为CTE(Common Table Expressions)。CTE是一个命名的临时结果集,作用范围是当前语句。CTE可以理解成一个可以复用的子查询,当然跟子查询还是有点区别的,CTE可以引用其他CTE,但子查询不能引用其他子查询。所以,可以考虑代替子查询。
43 0
|
6天前
|
SQL 关系型数据库 MySQL
Mysql事务隔离级别和锁特性
Mysql事务隔离级别和锁特性
|
3月前
|
SQL 关系型数据库 MySQL
⑨【MySQL事务】事务开启、提交、回滚,事务特性ACID,脏读、幻读、不可重复读。
⑨【MySQL事务】事务开启、提交、回滚,事务特性ACID,脏读、幻读、不可重复读。
29 0
|
3天前
|
关系型数据库 MySQL 测试技术
数据库专家带你体验PolarDB MySQL版 Serverless的极致弹性特性!
本次基于阿里云瑶池数据库解决方案体验馆,带你体验PolarDB MySQL Serverless形态下的性能压测环境,基于可选择的标准压测工具进行压测,构造弹性场景进行压测,实时动态展示弹性能力、价格和性价比结果,压测环境可开放定制修改、可重复验证。参与活动即有机会获得鼠标、小米打印机、卫衣等精美礼品。
数据库专家带你体验PolarDB MySQL版 Serverless的极致弹性特性!
|
4天前
|
关系型数据库 MySQL 测试技术
数据库专家带你体验PolarDB MySQL版 Serverless的极致弹性特性
本次基于阿里云瑶池数据库解决方案体验馆,带你体验PolarDB MySQL Serverless形态下的性能压测环境,基于可选择的标准压测工具进行压测,构造弹性场景进行压测,实时动态展示弹性能力、价格和性价比结果,压测环境可开放定制修改、可重复验证。参与活动即有机会获得鼠标、小米打印机、卫衣等精美礼品。
|
5天前
|
存储 安全 关系型数据库
MySQL 临时表的用法和特性
MySQL 临时表的用法和特性
|
5天前
|
关系型数据库 MySQL 数据库
MySQL事务得四大特性以及实现原理
MySQL事务得四大特性以及实现原理

热门文章

最新文章