我正在试图弄清楚我是否应该在MySQL中存储文本文件(65535字节或更少),或者根本不使用MySQL。性能是首要考虑因素,因为我是新手,因此易于使用。
如果我想使用数据库,那么数据类型的选择会是什么? VARCHAR可以用于这样的大数据,TEXT还是BLOB?不确定是哪一个。
答案 0 :(得分:2)
BLOB是一个二进制大对象,可以容纳可变数量的对象 数据。四种BLOB类型是TINYBLOB,BLOB,MEDIUMBLOB和 LONGBLOB。它们的区别仅在于它们的最大长度 能把持住。四种TEXT类型是TINYTEXT,TEXT,MEDIUMTEXT和 LONGTEXT。这些对应于四种BLOB类型并且具有相同的 最大长度和存储要求
但是在数据库中存储文件有一些优点和缺点:
优点:
1. Backups and switches to another server are easier to achieve
2. No need to add another method to access the files beside the database
缺点:
1. Accessing an image means retrieving it's bytes and maybe storing that as temporary local files and may be more complicated
2. File systems are simply faster due to lower overhead
文本和blob几乎相同,主要区别在于你在使用blob时必须自己关心编码。另一方面,您将被迫使用文本字段的编码...
决定是你的,我到目前为止听到的最多的意见是将图片存储为文件;但这是意见,尝试根据您的项目需求做出决定。