网站建设每天的工作,wordpress可视编辑,网站建设属于行政那个模块,产品销售方案与营销策略目前最新的twitter-mysql版本基于mysql5.5.22#xff0c;以下总结了一些比较明显的改进点#xff0c;大部分已经亲自证实#xff0c;其他一些诸如修复的比较次要的问题(例如编译问题)这里暂不列出#xff0c;可以详细参阅https://github.com/twitter/mysql/wiki/Change-His…目前最新的twitter-mysql版本基于mysql5.5.22以下总结了一些比较明显的改进点大部分已经亲自证实其他一些诸如修复的比较次要的问题(例如编译问题)这里暂不列出可以详细参阅https://github.com/twitter/mysql/wiki/Change-History修复的bug1.bug#60682某些场景下同时执行select/drop table/rename table/show innodb status时可能会导致死锁使用buglist上提供的testcase在5.1.48上能重现5518尚未重现。2.bug#61575当无法初始化本地native aio时(io_setup()失败)会crash innodb3.bug#64556中断在innodb层的查询可能会导致不相关的warning4.Bug#65030:5.Bug#650616. Potential security issue with Oracle MySQLIf, for whatever reason, the memcmp() call in check_scramble() returns a value with the 8 rightmost bits set to zero (e.g. 256), an invalid password could be accepted during authentication.新特性1.增加选项innodb_flush_dirty_pages_age该参数的目的是为了减少频繁的去刷新磁盘尤其是对于命短的Ssd盘比较有用。在磁盘比较空闲的时候它会限制每次只刷前innodb_flush_dirty_pages_age秒的脏页。2.可以动态配置--replicate-*参数用户可以在线动态修改过滤规则而无需重启服务器3.增加新的选项max_statement_time参数该参数为session级别其目的是在服务器端限制一条语句的执行时间单位为ms当查询超过该值时会被中断。例如SELECT MAX_STATEMENT_TIME10 * FROM t1;超过10ms则中断查询还可以给每个账户限制时间GRANT ... TO userhost WITH MAX_STATEMENT_TIME 104.集成新的information_schema表如下INNODB_BUFFER_PAGEINNODB_BUFFER_PAGE_LRUINNODB_BUFFER_POOL_STATS这些表显示了比较详细的buffer pool信息关于这些i_s表可以参阅MySQL5.6的文档5.prefetch_pages命令允许你手动的将相应的数据或者索引页加载到buffer pool中例如roottest 09:44:18select engine_control(innodb, prefetch_pages, 2,1) as pages;-------| pages |-------| 1 |-------1 row in set (0.00 sec)通过engine_control函数来实现其中第一个参数表示引擎的类别第二个参数表示存储引擎命令目前为prefetch_pages第三个参数表示space id第四个参数(后面可选的增加更多pageno)表示页号6.super-only选项将禁止非超级用户执行任何语句(read_only只能阻止更新语句)7.新的协议类型protocol_modexxxtest 09:54:45show variables like %protocol_mode%;------------------------------------------------------------| Variable_name | Value |------------------------------------------------------------| protocol_mode | MINIMAL_OBJECT_NAMES_IN_RESULT_SET_METADATA |------------------------------------------------------------这个选项只有一个值默认为NULL该选项可以简化传递给客户端的元数据当设置该选项后传递给客户端的库名表名和列名都是空字符串(尚未证实)原文的changelog解释如下This change introduces a new protocol mode that instructs MySQL to empty certain object names that are part of the result set metadata. Only the absolutely minimal (or essential) set of names is preserved. If the minimal option is set, the database, table (both original and aliased) and column names in the result set metadata will be empty strings. Only the column alias name is preserved.8.增加了一些新的status变量Innodb_files_openInnodb_files_openedInnodb_files_closedInnodb_tablespace_files_openInnodb_tablespace_files_openedInnodb_tablespace_files_closed9.为mysqld_safe增加了新的选项FormatOption FileDescription--flush-cachesflush-cachesFlush and purge buffers/caches (vm.drop_caches3)--numa-interleavenuma-interleaveRun mysqld with its memory interleaved on all CPUs这部分大意是在启动Mysqld前sync and drop cacheAdded mysqld_safe options to flush (sync and drop) caches before starting mysqld and to set the NUMA memory allocation policy to interleave有DBA同学能够去分析下么看看能否将这些特性移植过来10.buffer pool内存预分配增加选项xxxtest 10:23:11show variables like %innodb_buffer_pool_populate%;------------------------------------| Variable_name | Value |------------------------------------| innodb_buffer_pool_populate | OFF |------------------------------------为buffer pool预先分配好需要的物理内存11.表.ibd文件预分配增加了新的表选项min_pages可以在create/alter table时指定page的大小从而达到预分配.ibd文件的目的对于插入很猛的应用可以表空间扩展引起的避免抖动例如roottest 10:38:44Create table t1 (a int ,b int ) min_pages 100;Query OK, 0 rows affected (0.12 sec)$ls -lh t1.ibd-rw-rw---- 1 root root 7.0M Apr 18 10:38 t1.ibd24号发布的新的基于mysql5.5.22的版本还没来得及看先贴过来吧 :)MYSQL-62: Replication info not available from crash recovery?Restored code that stores the master binary log position of a slave in InnoDBs data file. Like in earlier MySQL versions, if a slave crashes, the name and position of the slave in relation to the master binary log file is printed after crash recovery.Backport innodb_flush_neighbors from MySQL 5.6Backported from MySQL 5.6 the innodb_flush_neighbors option that controls whether flushing a page from the InnoDB buffer pool also flushes other dirty pages in the same extent.Add ability to disable anticipatory flushingIntroduced the innodb_anticipatory_flushing option that controls whether the master thread will flush dirty pages from the buffer pool if there is I/O bandwidth available for background tasks.Add InnoDB flush-related status variablesIntroduced status variables that provide counters for the various flushing-related tasks performed by InnoDB. For example, these counters provide information about the number of pages scanned and flushed from the flush and LRU lists. Also, there are counters for the number of pages flushed by the background thread.