首页 > 数据库技术 > 详细

InnoDB的Named File Formats

时间:2017-01-16 19:24:52      阅读:214      评论:0      收藏:0      [点我收藏+]

随着InnoDB存储引擎的发展,新的页数据结构有时用来支持新的功能特性。比如前面提到的InnoDB Plugin,提供了新的页数据结构来支持表压缩功能,完全溢出的(Off page)大变长字符类型字段的存储。这些新的页数据结构和之前版本的页并不兼容。因此从InnoDB Plugin版本开始,InnoDB存储引擎通过Named File Formats机制来解决不同版本下页结构兼容性的问题。

InnoDB Plugin将之前版本的文件格式(file format)定义为Antelope,将这个版本支持的文件格式定义为Barracuda。新的文件格式总是包含于之前的版本的页格式。下图显示了Barracuda文件格式和Antelope文件格式之间的关系,Antelope文件格式有Compact和Redudant的行格式,Barracuda文件格式即包括了Antelope所有的文件格式,另外新加入了前面我们已经提到过的Compressed何Dynamic行格式。

技术分享

在InnoDB Plugin的官方手册中提到,未来版本的InnoDB存储引擎还将引入的新的文件格式,文件格式的名称取自动物的名字(这个学Apple?),并按照字母排序进行命名。翻阅源代码,发现目前已经定义好的文件格式有:

/**List of animal names representing file format.*/
static const char*file_format_name_map[]={
"Antelope""Barracuda""Cheetah""Dragon""Elk""Fox""Gazelle""Hornet""Impala""Jaguar""Kangaroo""Leopard""Moose""Nautilus""Ocelot""Porpoise""Quail""Rabbit""Shark""Tiger""Urchin""Viper""Whale""Xenops""Yak""Zebra"
};

参数innodb_file_format用来指定文件格式,可以通过下面的方式查看当前所使用的InnoDB存储引擎的文件格式:

show variables like ‘version‘\G

show variables like ‘innodb_version‘\G

show variables like ‘innodb_file_format‘\G

show variables like ‘innodb_file_format_check‘\G

参数innodb_file_format_check用来检测当前InnoDB存储引擎文件格式的支持度,该值默认为ON,如果出现不支持的文件格式,你可能在错误日志文件中看到类似如下的错误:

InnoDB:Warning:the system tablespace is in a
file format that this version doesnt support

 

InnoDB的Named File Formats

原文:http://www.cnblogs.com/wade-luffy/p/6290703.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!