mysqllongtext可以储存多少个文字?

LongText...嗯...这个字段...在 2 02 2 年...使用得相当频繁。

说它可以存储......大约4 GB。
真的是4 GB吗?它是...那个... 4 1 02 4 1 02 4 1 02 4 字节。
听起来很多。

但是想一想...一个汉字...可以占用3 个字节。
只有1 个英文的。
那么... 4 GB 字节... 可以容纳多少个单词?当然没那么多。
这取决于编码。
UTF-8 占用更多空间。
GBK只是省点钱而已。

例如...某个城市...比如北京...有一个网站...存储一本很长的小说...也许使用了LongText。
假设小说……专长……是三亿字。
平均 2 字节...即 6 GB 字节。
那么4 GB是不够的。
所以...您实际上可以节省多少...取决于内容。

另外...搜索时...如果您在长文本字段中...如果您搜索整个字段...例如全文搜索...数据库可能很慢...服务器也可能被阻止。
在某个项目中,我遇到了...检查很长的文本...超级慢。
我当时就很困惑……后来才明白……可能是因为太长了。

所以...你不能只看到可以存储多少字节。
就看是否实际使用了。
也许您根本不需要 4 GB。
一个MediumText...或者Text...应该根据当前情况来定。
例如...如果您存储一个包含数万个单词的文档...使用 LongText 是没有意义的。
服务器资源也被浪费了。

简而言之... LongText可以存储4 GB字节...但是实际字符数...受编码...受内容影响很大...当您使用它时...您应该仔细权衡。
不要以为 4 GB 字节...可以容纳无限的字符。

MySQL怎样处理超长文本 TEXT与BLOB字段存储优化

MySQL中text数据类型的大小限制mysql中text大小

MySQL 中的文本有大小限制。
它到底是什么样子的?让我告诉你。

文本有四种类型:小文本、文本、中文本和长文本。
最大的区别是什么?
小文本:2 5 5 字节。
够了做什么?保存一些超短的评论什么的。
文本:6 5 ,5 3 5 字节。
这是最常用的方法。
通常只保存一些博文、评论等就足够了。
平均文本:1 6 ,7 7 7 ,2 1 5 字节。
它比文本大得多,因此可以用来存储长文档或其他内容。
文本长度:4 ,2 9 4 ,9 6 7 ,2 9 5 字节。
这是巨大的,可以存储几千兆字节的文本。

比如你创建一个表:
sql 创建文章表 ( id int(1 1 ) NOT NULL AUTO_INCRMENT, 标头 varchar(2 5 5 ) NOT NULL, 内容文本不为空, 主键(id) ) 引擎=InnoDB 默认字符集=utf8 mb4 ;
这里的内容是文本类型。
它最多可以存储 6 5 ,5 3 5 字节。

但是需要注意的一点是MySQL对每行数据的最大长度限制为6 5 ,5 3 6 字节。
此限制包括所有列。
所以即使内容是文本,你的其他列的总和也不能超过这个数字。
如果内容填充了 6 5 ,5 3 5 字节,并且添加一个字符超出了限制,MySQL 将报告“Row size Too Large”错误。

如果超出限额怎么办?
1 .拆分字段:您可以将一个文本字段拆分为多个小字段。
例如,将一篇长文章分成几个段落,并为每个字段保存一个段落。
这样每行数据就不会很大,也不会有问题。
但是查数据的时候还得自己去拼,有点麻烦。
2 .使用BLOB类型:BLOB存储二进制数据,也可以存储文本。
有四种类型:tinyblob、blob、mediumblob、longblob。
文本的大小和类型与用户相对应。
可以将文本更改为BLOB,例如longblob内容NOT NULL。
BLOB 还可以存储几 GB 的数据。
但BLOB不能像文本一样被完全索引,搜索也不方便。
3 .外部存储:所有数据都存储在MySQL中。
例如,如果文章内容很大,则您只将内容的 URL 存储在 MySQL 中,而内容本身存储在 Amazon S3 等云存储中。
只需在 MySQL 中保存一个链接即可。
这样,无论 MySQL 有多大,您可以保存的文本都没有限制。
测试的时候,先检查MySQL,获取链接,然后出去获取数据。

因此,选择哪种方法要根据情况而定。
如果您只想保存一些常规的帖子评论或其他内容,只需使用文本即可。
如果您不小心保存了特别长的文本,则可能需要考虑将其拆分为 BLOB 甚至外部存储。