MySQL5.0、5.1、5.5、5.6功能进化

摘要:
3.232001420035.020065.0.96GA1,视图,触发器,存储过程和存储函数2,游标3,xa分布式事务2,Federated引擘5.120085.1.63GA1,Sun收购后的版本2,分区表3,行复制.4,BerkeleyDB移出5,Federatedweredeprecated6,Oracle推出InnoDBplugin版本7,Event8,PluginAPI9,PluggablestorageengineAPI10,日志表11,加强information_schema12,mysqlslap13,慢查询阀值可设置为毫秒5.520105.5.25GA1,Oracle收购后的版本2,InnoDB变为默认引擘3,加入performance_schema库,监控MySQL服务器运行时的性能4,半同步复制5,多缓冲池实例6,SupplementaryUnicodecharacters7,多核利用率提高8,加强SHOWENGINEINNODBSTATUS输出9,分区支持新增RANGECOLUMNS,LISTCOLUMNS10,ALTERTABLE…
目前线上使用的版本情况:新上线端口统一使用5.5,不说别的,一个快速恢复重启就值回票价。但因为历史原因还有大量5.1的版本,甚至,I’am sorry,还有少数5.0的版本。至于5.0以前的版本,你是从唐朝穿越过来的吗?

3.23 2001

4 2003

5.0 2006 5.0.96GA
1,视图,触发器,存储过程和存储函数
2,游标
3,xa分布式事务
2,Federated引擘

5.1 2008 5.1.63GA
1,Sun收购后的版本
2,分区表
3,行复制.
4,BerkeleyDB移出
5,Federated were deprecated
6,Oracle推出InnoDB plugin版本
7,Event
8,Plugin API
9,Pluggable storage engine API
10,日志表
11,加强information_schema
12,mysqlslap
13,慢查询阀值可设置为毫秒

5.5 2010 5.5.25GA
1,Oracle收购后的版本
2,InnoDB变为默认引擘
3,加入performance_schema库,监控MySQL服务器运行时的性能
4,半同步复制
5,多缓冲池实例
6,Supplementary Unicode characters
7,多核利用率提高
8,加强SHOW ENGINE INNODB STATUS输出
9,分区支持新增RANGE COLUMNS,LIST COLUMNS
10,ALTER TABLE … TRUNCATE PARTITION
11,TO_SECONDS() function
12,编译采用cmake
13,多个回滚段(Multiple Rollback Segments)
14,提高了默认线程并发数,设置innodb_thread_concurrency
15,后台输入/输出线程控制,设置innodb_read_io_threads和innodb_write_io_threads
16,主线程输入/输出速率控制,设置innodb_io_capacity
17,可以关闭适应性散列索引功能
18,可以关闭InnoDB的插入缓冲
19,恢复组提交(Restored Group Commit)
20,快速恢复重启
21,MySQL 5.5为基于Linux和Windows的数据库系统提供了真实的异步输入/输出支持。如果新的默认设置与主机输入/输出子系统不兼容,要使用该功能,需要在Linux系统中安装libaio用户空间库,并配置innodb_use_native_aio选项参数(该参数可以关闭)
22,使用innodb_change_buffering配置参数来控制删除缓冲和既有插入缓冲功能,默认在所有的系统中都使用
23,每一个缓冲池实例都有一个单独的刷新(Flush)列表互斥,从而进一步减少了争用
24,设置innodb_purge_threads配置参数来选择清除操作是否使用单独线程
25,禁止会话执行另一个会话中,未完成事务处理正在使用的表格中的DDL语句,能够保证事务处理的串行化
26,Linux系统中,在高事务处理频率和连接负载的情况下,MySQL5.5在处理只读(Read Only)操作时的性能和可扩展性是MySQL5.1的200%,处理读/写操作时的性能和可扩展性是MySQL5.1的370%
27,复制Heartbeat
28,relay_log_recovery,自动丢弃自己未处理的中继日志(Relay Log),然后从源主机服务器恢复挂起的事务处理
29,根据服务器过滤项复制
30,SLAVE_TYPE_CONVERSION,提供了一种精确的数据类型转换机制
31,建立快速索引,添加(Add)或删除(Drop)索引,而无需复制整个目标表中的底层数据
32,数据压缩,ROW_FORMAT和KEY_BLOCK_SIZE参数,按照1K,2K,4K,8K或标准16K字节压缩等级存储数据页。
33,ROW_FORMAT=DYNAMIC或ROW_FORMAT=COMPRESSED创建表,这提高了大对象的存储效率
34,存储对象(包括存储过程,函数,触发器)内部使用SIGNAL/RESIGNAL语法,用于项目的前期研发和调试,然后产生错误条件,并使用该条件调用主机应用程序中的专用错误处理程序
35,表和索引RANG和LIST分区范围扩展到了非整数列和日期,并增加了在多个列上分区的能力,COLUMNS关键字支持这些选项

5.6 目前无GA版,但已经正式冻结准备发送GA版 5.6.5m8
1,查询优化:Index Condition Pushdown,Multi-Range Read,File Sort Optimization
2,加强performance_schema库
3,Dump/Restore buffer pool for fast start up
4,UUID唯一标识服务器,内部事务序列产生全局唯一GTID
5,自动回滚复制到一半的事务并重做整个事务
6,row格式Binlog中只记必需字段
7,延时复制
8,远程Binlog备份
9,row格式复制记录SQL语句
10,kernel mutex splits into different mutexes
11,InnoDB 全文搜索
12,Online add index,Add / Drop Foreign Key,Add / Drop Column,Rename Table,Rename Column
13,Transportable Tablespaces
14,Direct Access to InnoDB via Memcached
15,innodb压缩增强
16,improved accuracy of InnoDB index statistics, and consistency across MySQL restarts
17,NoSQL Interface via memcached
18,分区增强:Explicit Partition Selection–SELECT * FROM employees PARTITION (p0, p2),Import / Export for Partitioned Tables-ALTER TABLE e EXCHANGE PARTITION p0 WITH TABLE e2
19,多线程复制,数据库级别
20,Replication Checksums
21,Hash Join
22,Read-Only事务区分
23,5.6.6峰值最高可以达到16w的QPS,比原版的5.1提升4倍(使用flash设备)

原文http://www.iamcjd.com/?p=1223

免责声明:文章转载自《MySQL5.0、5.1、5.5、5.6功能进化》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Go语言正则表达式提取网页文本Underscore.string Version (2.0.0) 中文文档下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

MySQL的WAL(WriteAhead Logging)机制

MySQL 里经常说到的 WAL技术,也就是先写日志,再写磁盘。 当内存数据页跟磁盘数据页内容不一致的时候,我们成这个内存页为“脏页”。内存数据写入磁盘后,内存和磁盘上的数据页内容就一致了,称为“干净页”。 MySQL 从 内存更新到磁盘的过程,称为刷脏页的过程(flush)。 InnoDB 刷脏页的时机: 内存中的redo log 写满了,这时系统...

Mysql 查询优化,索引原理与慢查询优化。

Mysql 查询优化 索引原理与慢查询优化 一 介绍 为什么要有索引? 一般的应用程序,读写比例在10:左右,而且插入操作和一般的更新操作很少出现性能问题, 在生产环境中,我们遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,因此对查询, 我们必定要去优化它们,那我们怎么去优化呢?那就要提到索引了。 什么是索引? 索引在MySQL中也叫做“...

MySQL -- Innodb是如何处理自增列的

对于那些向带有自增列的表中插入行的语句,Innodb提供一种可配置的锁定机制,这种锁定机制可以显著提高SQL语句的可伸缩性和性能。 Innodb中为了使用自增机制,自增列必须是索引的部份,从而可以使用等价查询。典型的做法是将自增列放在表的索引的第一个位置。   Innodb自增锁模式 自增锁模式是在启动的时候由参数innodb_autoinc_lock_m...

更改mysql引擎后无法建立外键(navicat)

当我们使用navicat添加外键时,提示如下错误 首先考虑以下原因: 1:两个字段的数据类型和长度不匹配:例如一个是int一个是bigint 2:外键所参考的字段必须为主键 3:要设置外键的字段不能为主键 4:mysql表的引擎必须得是innodb(因为mysql默认引擎为MyISAM,但如果是这种情况的话,navicat不会报错,只会默默建立索引而不建...

备份与恢复概述,冷备,热备

对于DBA来说,最基本的工作就是数据库的备份与恢复,在意外情况下(如服务器宕机、磁盘损坏等)要保证数据不丢失,或者是最小程度地丢失。每个DBA应该每时每刻都关心自己所负责的数据库的备份情况。MySQL数据库提供的大多数工具(如mysqldump、ibbackup、replication)都能很好地完成备份的工作,当然也可以通过第三方的一些工具来完成,如xt...

MySQL数据库事务各隔离级别加锁情况--read committed && MVCC(转)

本文转自https://m.imooc.com/article/details?article_id=17290 感谢作者 上篇记录了我对MySQL 事务 隔离级别read uncommitted的理解。这篇记录我对 MySQL 事务隔离级别 read committed & MVCC 的理解。 前言 可以很负责人的跟大家说,MySQL 中的...