http://dev.mysql.com/doc/refman/5.7/en/innodb-row-format-dynamic.html
有人可以解释depends on the page size and the total size of the row
吗?如果我使用InnoDB并保留默认设置,那么创建一个包含60 bytes + a MEDIUMTEXT with 10kb data
的表格,MEDIUMTEXT
是否会存储在页面上或页面外?
答案 0 :(得分:0)
如果总记录大小小于~7k(完全为UNIV_PAGE_SIZE / 2 - 200),则记录存储在页面上,所有字段包括* BLOB,* TEXT。
如果总记录大小超过7k,则每个只有768个字节* BLOB字段值存储在页面上。该字段的剩余页面存储在外部页面中。
在Barracuda附带的DYNAMIC格式中,只有20个字节的BLOB字段存储在页面上 - 其余部分存储在外部页面中。