zoukankan      html  css  js  c++  java
  • MySQL5.0、5.1、5.5、5.6功能进化

    目前线上使用的版本情况:新上线端口统一使用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设备)

  • 相关阅读:
    @RequestParam注解使用:Name for argument type [java.lang.String] not available, and parameter name information not found in class file either.
    cglib动态代理导致注解丢失问题及如何修改注解允许被继承
    springboot Autowired BeanNotOfRequiredTypeException
    git根据用户过滤提交记录
    不同包下,相同数据结构的两个类进行转换
    How to use Jackson to deserialise an array of objects
    jooq实践
    java如何寻找main函数对应的类
    Python--matplotlib
    Python 和 Scikit-Learn
  • 原文地址:https://www.cnblogs.com/nulige/p/6880548.html
Copyright © 2011-2022 走看看