6 mysql optimization sqldatatypes
我有一列,其数据类型是LONGTEXT
. 而TEXT
数据类型足以满足 95% 的值。我LONGTEXT
只需要 5% 的值。
现在我想知道,在 中存储一个很小的值LONGTEXT
会浪费很多空间吗?这是优化吗?
让我们看一下 MySQL 文档。
\n\n\n\n\nTEXT[(M)] [字符集 charset_name] [COLLATE 排序规则_name]
\n\n最大长度为 65,535 (2^16 \xe2\x88\x92 1) 个字符的 TEXT 列。\n 如果值包含多字节\n 字符,则有效最大长度会较小。每个 TEXT 值都使用 2 字节长度前缀存储,该前缀指示该值中的字节数。
\n\nLONGTEXT [字符集 字符集名称] [COLLATE 排序规则名称]
\n\n最大长度为 4,294,967,295 或 4GB (2^32 \xe2\x88\x92 1)\n 个字符的 TEXT 列。如果值包含多字节字符,则有效最大长度会较小。LONGTEXT 列的有效最大长度还取决于客户端/服务器协议中配置的最大数据包大小和可用内存。每个 LONGTEXT 值均使用 4 字节长度前缀存储,该前缀指示该值中的字节数。
\n\nMEDIUMTEXT [字符集 字符集名称] [COLLATE 排序规则名称]
\n\n最大长度为 16,777,215 (2^24 \xe2\x88\x92 1)\n 个字符的 TEXT 列。如果值包含多字节字符,则有效最大长度会较小。每个 MEDIUMTEXT 值都使用 3 字节\n 长度前缀来存储,该前缀指示该值中的字节数。
\n
所以前缀的差别是 2 个字节。
\n 归档时间: |
|
查看次数: |
2271 次 |
最近记录: |