摘要:本文是关于Mysql 6.0 新特性介绍,其中包括了Mysql 6.0已经和即将增加的功能,还包括需要更新并删除的过时结构。
Mysql 6.0 新特性
(注意:因为Mysql 6.0发展仍处于早期阶段,这里的内容仍然会有所变化)
以下功能已经或即将添加到Mysql 6.0中:
◆ 新Falcon事务存储引擎(见13.8, “Falcon存储引擎” );
◆ 支持更多的Unicode字符集:utf16 、utf32 、和4字节utf8 (这些字符集支持这些附加的Unicode字符集);
◆ 增加了BACKUP DATABASE 和 RESTORE 语句来进行备份和还原操作(见第6.3节,“使用Mysql备份”) ;
◆ 改进INFORMATION_SCHEMA数据库,并增加了INFORMATION_SCHEMA.PARAMETERS 表,INFORMATION_SCHEMA.ROUTINES 增加了新列(见第19.27 ,“INFORMATION_SCHEMA PARAMETERS表” 和19.14 ,“ INFORMATION_SCHEMA ROUTINES ROUTINES表” );
◆ 对子查询和Join进行了优化,包括对MyISAD和InnoB存储引擎分散范围内的批量索引访问;
◆ RESET SLAVE不再更改复制连接的参数;以前,它重置他们到命令行指定的数值(见第12.6.2.3 ,“ RESET SLAVE语法” );
◆ LOCK TABLES 语法已经扩展,支持不会自动事务提交的事务表锁。在后面的 LOCK TABLES ... IN SHARE MODE 或者 LOCK TABLES ... IN EXCLUSIVE MODE 你可以使用未提及的表级锁,你也可以确保LOCK TABLES 语句可以连续的得到多次的事务锁, 增加额外的表格到锁集合,而无需解锁以前已经锁住的表格。当使用LOCK TABLES with IN SHARE MODE或者在EXCLUSIVE MODE ,表级锁在事务结束前不会解锁。
使用LOCK TABLE获得的事务锁在事务结束时释放,包括显示的提交或者回滚,或者由于语句引起的隐式提交,或者由于链接关闭. 12.4.3, “引起隐式提交的语句” ,列出了那些会引起隐式提交的语句。
LOCK TABLES的行为在READ和WRITE锁时报出不变( 也就是当不使用IN SHARE MODE或者IN EXCLUSIVE MODE ) ;
◆ 增强的XML功能,包括一个新的LOAD XML语法(见第12.2.7,“ LOAD XML语法”);
◆ 支持扩展的注释,包括表、列和索引。
下面的结构是过时的,已在Mysql 6.0中删除
应用应该更新,使用另一个方式来使用他们;
◆ table_type 系统变量(用storage_engine);
◆ 表格的用来在CREATE TABEl或者ALTER TABLE的TYPE 参数(使用ENGINE );
◆ SHOW TABLE TYPES 语法(使用SHOW ENGINES);
◆ The log_bin_trust_routine_creators 变量(使用log_bin_trust_function_creators);
◆ TIMESTAMP( N ) :来指定显示宽度为N(使用没有N的);
◆ SHOW INNODB STATUS和SHOW MUTEX STATUS语法(使用SHOW ENGINE INNODB STATUS这两种);
◆ The LOAD TABLE ... FROM MASTER和LOAD DATA FROM MASTER语法;
◆ SHOW PLUGIN 语法(使用SHOW PLUGINS );
◆ BACKUP TABLE 和RESTORE TABLE 语法;
◆ The --master-xxx 指定复制的参数的服务器参数(使用CHANGE MASTER TO statement 代替):
--master-host , --master-user , --master-password , --master-port ,
--master-connect-retry , --master-ssl , --master-ssl-ca , --master-ssl-capath ,
--master-ssl-cert , --master-ssl-cipher , --master-ssl-key