mysql 表的最大行數取決于存儲引擎:innodb:64 kb,可調整至 8 kbmyisam:64 kb,可調整至 4 gb其他存儲引擎:限制從幾百字節到幾 gb 不等。
MySQL 表的最大行數
MySQL 表的最大行數取決于所創建表時使用的存儲引擎。不同的存儲引擎具有不同的行大小限制,并且它們還可以通過配置進行調整。
InnoDB
InnoDB 是 MySQL 中默認的存儲引擎,它具有以下行大小限制:
64 KB 默認最大行大小
可通過 innodb_row_format
設置調整為 Compact
或 Redundant
,最大可達 8 KB
MyISAM
MyISAM 是另一個受歡迎的存儲引擎,它具有以下行大小限制:
64 KB 默認最大行大小
可通過 myisam_max_row_size
設置調整,最大可達 4 GB
其他存儲引擎
其他存儲引擎(如 Memory、CSV 和 Blackhole)也具有自己的行大小限制,范圍從幾百字節到幾 GB。
配置行大小限制
可以調整存儲引擎的行大小限制,如下所示:
對于 InnoDB:
<code class="sql">ALTER TABLE table_name ROW_FORMAT=Compact;</code>
登錄后復制
對于 MyISAM:
<code class="sql">ALTER TABLE table_name MAX_ROWSIZE=8388608;</code>
登錄后復制
注意事項
行大小限制包括數據、索引和任何其他存儲的信息。
超過行大小限制的行將無法插入表中。
較大的行大小會增加存儲空間的使用,并可能影響性能。
根據表的實際需求選擇適當的行大小限制非常重要。