加入收藏 | 设为首页 | 会员中心 | 我要投稿 扬州站长网 (https://www.0514zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

Innodb 表的压缩方式

发布时间:2022-04-06 12:05:29 所属栏目:MySql教程 来源:互联网
导读:innodb 目前支持两种文件格式(innodb_file_format) Antelope 和Barracuda 5.6 默认的是 Antelope (羚羊) ,有两种数据表格式(row_format):Redundant(冗余)、Compact(紧凑) 5.7 默认的是 Barracuda (梭子鱼) 原来的基础上新增了两种数据表格式的
        innodb 目前支持两种文件格式(innodb_file_format) Antelope 和Barracuda
 
       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。

(编辑:扬州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!