innodb 目前支持两种文件格式(innodb_file_format) Antelope 和Barracuda
创新互联公司是一家以成都网站建设、网页设计、品牌设计、软件运维、网站推广、小程序App开发等移动开发为一体互联网公司。已累计为自拌料搅拌车等众行业中小客户提供优质的互联网建站和软件开发服务。
5.6 默认的是 Antelope (羚羊) ,有两种“数据表格式”(row_format):Redundant(冗余)、Compact(紧凑)
5.7 默认的是 Barracuda (梭子鱼) 原来的基础上新增了两种数据表格式的支持:Dynamic 和 Compressed
一、 如何设置MySQL innodb 表的压缩
设置innodb 表的 压缩
第一,mysql的版本需要大于5.5
第二,设置innodb_file_format=barracuda
innodb_file_format=barracuda
innodb_file_per_table = 1
innodb_strict_mode=1 #建议加上
innodb_default_row_format = COMPRESSED #在整个库默认启用行压缩格式时设定,一边不改变此值
第三,create table或者alter talble 增加 ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8;
鉴于InnoDB表的最大行大小约为8K,KEY_BLOCK_SIZE=8通常是一个安全的选择
在缓冲池中,压缩数据保存在小页面中,页面大小基于该KEY_BLOCK_SIZE 值
KEY_BLOCK_SIZE默认为innodb_page_size值的一半,也就是8k