InnoDB表的一些限制

 

 

InnoDB表的一些限制

1.表最多只有有1000列.

2.单列索引长度小767字节,适用前缀索引。多列组合索引长度3072字节

3.列的大小(除小可变列 varchar、varbianry,text,blob)小页于50%页大小.

 LONG BLOB、LONGTEXT限制于4GB以内,总共行长度包含BLOB与TEXT小于4G

4.行大小限制于65335字节(不包含BLOB与TEXT).

5.默认数据页16K

6.logfile限制于4G以内.

 

 

对InnoDB表的限制

· 一个表不能包含超过1000列。

· 内部最大键长度是3500字节,但MySQL自己限制这个到1024字节。

· 除了VARCHAR, BLOB和TEXT列,最大行长度稍微小于数据库页的一半。即,最大行长度大约8000字节。LONGBLOB和LONGTEXT列必须小于4GB, 总的行长度,页包括BLOB和TEXT列,必须小于4GB。InnoDB在行中存储VARCHAR,BLOB或TEXT列的前768字节,余下的存储的分散的页面中。

· 虽然InnoDB内部地支持行尺寸大于65535,你不能定义一个包含VARCHAR列的,合并尺寸大于65535的行。

·                mysql> CREATE TABLE t (a VARCHAR(8000), b VARCHAR(10000),
·                    -> c VARCHAR(10000), d VARCHAR(10000), e VARCHAR(10000),
·                    -> f VARCHAR(10000), g VARCHAR(10000));
·                ERROR 1118 (42000): Row size too large. The maximum row size for the
·                used table type, not counting BLOBs, is 65535. You have to change some
·                columns to TEXT or BLOBs

· 在一些更老的操作系统上,数据文件必须小于2GB。

· InnoDB日志文件的合并尺寸必须小于4GB。

· 最小的表空间尺寸是10MB。最大的表空间尺寸是4,000,000,000个数据库页(64TB)。这也是一个表的最大尺寸。

· InnoDB表不支持FULLTEXT索引。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值