`

MYSQL 5.6新特性介绍

 
阅读更多
官方参考:
http://dev.mysql.com/doc/refman/5.6/en/mysql-nutshell.html
一、大的方面变动:

1、新增字典表,InnoDB buffer pool 相关(评:可深入了解)
Several new InnoDB-related INFORMATION_SCHEMA tables provide information about the InnoDB buffer pool, metadata about tables, indexes, and foreign keys from the InnoDB data dictionary, and low-level information about performance metrics that complements the information from the Performance Schema tables.

2、执行计划优化  (评:可持续关注)
Optimizer statistics for InnoDB tables can now persist across server restarts, for improved plan stability. You can also control the amount of sampling done for InnoDB indexes, to make the optimizer statistics more accurate and improve the query execution plan.

3、多表打开优化
InnoDB now limits the memory used to hold table information when many tables are opened

4、内部优化
InnoDB has several internal performance enhancements, including reducing contention by splitting the kernel mutex, moving flushing operations from the main thread to a separate thread, enabling multiple purge threads, and reducing contention for the buffer pool on large-memory systems.

5、死锁写入log
Information about all InnoDB deadlocks can be written to the MySQL server error log, to help diagnose application issues.

二、分区表方面(注:越来越接近ORACLE分区表了)

1、分区交换 (评:想用的功能)
It is now possible to exchange a partition of a partitioned table or a subpartition of a subpartitioned table with a nonpartitioned table

2、在SELECT等dml中指定查询的分区
Explicit selection of one or more partitions or subpartitions is now supported for queries, as well as for many data modification statements, that act on partitioned tables. For example, assume a table t with some integer column c has 4 partitions named p0, p1, p2, and p3. Then the query SELECT * FROM t PARTITION (p0, p1) WHERE c < 5 returns only those rows from partitions p0 and p1 for which c is less than 5.
三、性能方面

(评:看能得到哪些数据,用以监控分析)

Performance Schema.  The Performance Schema includes several new features:
Instrumentation for table input and output. Instrumented operations include row-level accesses to persistent base tables or temporary tables. Operations that affect rows are fetch, insert, update, and delete.
关注:
Event filtering by table, based on schema and/or table names.
关注:
Event filtering by thread. More information is collected for threads.
关注:
Summary tables for table and index I/O, and for table locks.
关注:
Instrumentation for statements and stages within statements.

Configuration of instruments and consumers at server startup, which previously was possible only at runtime.
四、复制方面

Replication and logging.  These replication enhancements were added:

MySQL row-based replication now supports row image control. By logging only those columns required for uniquely identifying and executing changes on each row (as opposed to all columns) for each row change, it is possible to save disk space, network resources, and memory usage. You can determine whether full or minimal rows are logged by setting the binlog_row_image server system variable to one of the values minimal (log required columns only), full (log all columns), or noblob (log all columns except for unneeded BLOB or TEXT columns). See System variables used with the binary log, for more information.
(评:关注怎么设置,减少log量,减少同步压力)

复制校验
中文解释:http://www.zhaokunyao.com/archives/2387
1、校验
Binary logs written and read by the MySQL Server are now crash-safe, because only complete events (or transactions) are logged or read back. By default, the server logs the length of the event as well as the event itself and uses this information to verify that the event was written correctly. You can also cause the server to write checksums for the events using CRC32 checksums by setting the binlog_checksum system variable. To cause the server to read checksums from the binary log, use the master_verify_checksum system variable. The --slave-sql-verify-checksum system variable causes the slave SQL thread to read checksums from the relay log.

2、不是很了解
MySQL now supports logging of master connection information and of slave relay log information to tables as well as files. Use of these tables can be controlled independently, by the --master-info-repository and --relay-log-info-repository server options. Setting --master-info-repository to TABLE causes connection information to be logged in the slave_master_info table; setting --relay-log-info-repository to TABLE causes relay log information to be logged to the slave_relay_log_info table. Both of these tables are created automatically, in the mysql system database.

3、备份
mysqlbinlog now has the capability to back up a binary log in its original binary format. When invoked with the --read-from-remote-server and --raw options, mysqlbinlog connects to a server, requests the log files, and writes output files in the same format as the originals. See Section 4.6.7.3, “Using mysqlbinlog to Back Up Binary Log Files”.

4、延时复制(评:用以数据恢复,历史数据情况)
MySQL now supports delayed replication such that a slave server deliberately lags behind the master by at least a specified amount of time. The default delay is 0 seconds. Use the new MASTER_DELAY option for CHANGE MASTER TO to set the delay.

5\并行执行SLAVE同步
MySQL Replication now supports parallel execution of transactions with multi-threading on the slave.

6、binlog位置参数
The log_bin_basename system variable has been added. This variable contains the complete filename and path to the binary log file
五、优化器

1、explain(评:可以在select以外语句执行)
The EXPLAIN statement now provides execution plan information for DELETE, INSERT, REPLACE, and UPDATE statements. Previously, EXPLAIN provided information only for SELECT statements.

2、优化器增加可选
mysql> SELECT @@optimizer_switch\G

engine_condition_pushdown={on|off}
index_merge={on|off}
index_merge_intersection={on|off}
index_merge_sort_union={on|off}
index_merge_union={on|off}
engine_condition_pushdown={on|off}
index_condition_pushdown={on|off}
mrr={on|off}
mrr_cost_based={on|off}

3、Pushdown Optimization
参考:
http://hidba.org/?p=320


4\ trace SQL (评:更加细致,可以了解下)
参考:http://forge.mysql.com/wiki/MySQL_Internals_Optimizer_tracing

The optimizer now has a tracing capability, primarily for use by developers. The interface is provided by a set of optimizer_trace_xxx system variables and the INFORMATION_SCHEMA.OPTIMIZER_TRACE table
分享到:
评论

相关推荐

    mysql 5.6 新特性-innodb

    ### MySQL 5.6 新特性-InnoDB:深入剖析 #### MySQL 5.6 版本简介及重要性 MySQL 5.6 是 MySQL 的一个重要版本,相比于之前的版本(如 MySQL 5.1 和 5.5),它在多个方面进行了显著的改进。这些改进不仅提升了...

    MySQL5.6官方文档

    #### 二、MySQL5.6核心特性与新增功能 - **MySQL5.6核心特性**: - 高性能与可扩展性:支持多核处理器优化、并行查询执行等特性。 - 数据安全:通过SSL加密、审计日志、用户权限管理等功能保障数据的安全。 - ...

    mysql5.6手册英文版本

    本手册主要介绍了 MySQL 5.6 的各种功能特性、配置选项以及管理指南,特别涵盖了 MySQL Cluster NDB 7.3 的相关内容。MySQL 5.6 适用于多种应用场景,包括 Web 应用、数据仓库、业务关键型应用等。 #### 二、文档...

    mysql5.6官方文档

    MySQL 5.6提供了新的性能监视工具,如Performance Schema,用于跟踪数据库的运行状况和性能指标。文档会指导用户如何解读这些信息,进行性能调优。 7. **安全性和权限管理**: MySQL 5.6在安全方面有所加强,包括...

    mysql5.6安装包 mysql5.6官网下载的

    - **查询执行优化**:MySQL 5.6引入了新的优化器策略,如延迟关联、子查询缓存等,提高了复杂查询的执行效率。 - **InnoDB存储引擎改进**:InnoDB作为默认存储引擎,在5.6版本中得到了显著增强,支持更多的并发事务...

    MySQL 5.6 for Windows 官方(mysql-5.6.34-winx64.zip)

    在本文中,我们将深入探讨MySQL 5.6 for Windows的主要特性、安装过程以及其对winx64平台的支持。 1. **MySQL 5.6的关键特性** - **性能优化**:MySQL 5.6引入了InnoDB存储引擎的性能增强,如InnoDB并行插入,提高...

    MySQL5.6以及驱动jar包

    MySQL5.6是MySQL数据库系统的一个重要版本,它在前一版本的基础上进行了一系列的改进和优化,以提供更高效、更稳定的服务。MySQL是一个开源的关系型数据库管理系统,广泛应用于Web应用、数据分析、企业内部系统等多...

    mysql 5.6 教程详解

    官方文档强调了不同版本的MySQL 5.6可能包含不同的特性,因此如果你需要了解你所使用的MySQL 5.6版本具备哪些特性,你应该参考你的MySQL 5.6许可协议或联系Oracle的销售代表。手册中还提到了一些不属于每个MySQL 5.6...

    Mysql5.6、Mysql5.7 JDBC驱动

    本文将深入探讨Mysql5.6和Mysql5.7的JDBC驱动,以及如何使用`mysql-connector-java-5.1.34.jar`这个驱动包进行数据库连接。 首先,JDBC驱动是Java程序连接MySQL数据库的关键,它允许Java应用程序通过执行SQL语句来...

    MySQL 5.6新特性深入剖析——InnoDB引擎1

    在InnoDB性能优化方面,MySQL 5.6引入了一些关键特性: 1. **只读事务**:为了提高并发性能,MySQL 5.6区分了只读事务和更新事务。只读事务不会产生历史版本,因此在创建ReadView时,只需遍历更新事务链表,减少了...

    mysql 5.6 绿色精简版 5Mb

    6. **文件名:mysql5.6(simple)**: 压缩包内的文件可能是安装脚本、配置文件、数据库服务器可执行文件等,用于启动和运行MySQL 5.6服务。用户需要按照特定步骤解压并启动这些文件,以启动数据库服务。 总之,...

    MySQL 5.6 官方文档

    - **第 1 章**:介绍了 MySQL 数据库管理系统的基本概念和历史背景,同时也提到了 MySQL 5.6 中的新特性。 - **第 2 章**:提供了 MySQL 的安装指南,包括如何选择合适的 MySQL 版本和发行包。 #### 四、MySQL 5.6 ...

    MySQL5.6 RPM安装包文件

    MySQL 5.6是这款流行的关系型数据库管理系统的一个重要版本,提供了许多改进和新特性,旨在提升性能、稳定性和安全性。 在安装MySQL 5.6 RPM包之前,你需要确保系统已经安装了RPM和依赖管理工具。通常,对于基于Red...

    mysql5.6官方手册

    MySQL 5.6 的新特性** - **分区支持**:增强了分区功能,使得数据管理和查询更加高效。 - **存储引擎**:提供了多种存储引擎选择,如 InnoDB 和 MyISAM,以适应不同的应用场景需求。 - **半同步复制**:通过半同步...

    mysql5.6参考手册

    MySQL 5.6 参考手册是MySQL数据库管理系统的一个全面指南,详细介绍了MySQL 5.6版本的各种特性和功能。此版本涵盖了从5.6到5.6.8的所有更新,并且不包含MySQL Cluster的相关内容。该文档不仅适用于管理员,也适用于...

    mysql5.6版本,自己用的,可以用

    MySQL 5.6是MySQL数据库管理系统的一个重要版本,它在2013年发布,带来了许多性能提升和功能增强。这个版本特别适用于那些遇到与较新版本兼容性问题的用户,比如在尝试导入SQL文件时遇到数据库版本不匹配的问题。 ...

    mysql5.6版本说明文档

    这个版本的说明文档详细地介绍了这些变化和新特性,对于开发人员、数据库管理员以及对MySQL感兴趣的人来说,是非常宝贵的参考资料。 在MySQL 5.6中,查询优化器得到了显著的优化,支持更复杂的查询策略,例如基于...

    mysql5.6安装文件-完美

    这个“mysql5.6安装文件-完美”压缩包包含的是MySQL 5.6的安装程序,即“mysql-installer-community-5.6.10.1.msi”,这是一个Windows平台上的MSI(Microsoft Installer)格式的安装包,用于在Windows操作系统上轻松...

Global site tag (gtag.js) - Google Analytics