Actually, mediumtext is a essentially a blob type. A tinyblob/tinytext type has a max of 255 bytes. A blob/text type has a max of 65535 bytes (not large enough in case someone uploads an image larger than 64k). Mediumblob/mediumtext maxes out at 16MB (why I choose to use it). And, finally, longblob/longtext maxes out at 4.2GB (way too large for most images).
The only difference between blob and text is the case sensitivity used when sorting (text types are case INsensistive)
Also, table sizes in MySQL are limited by the filesystem. On my Linux box, I have a filesystem max file size of 2GB. Therefore, my tables have a max size of 2GB. From what I've heard, ReiserFS with Linux kernel 2.4 will allow you have files much larger than 2GB, so the barrier would be broken.
All of this information is presenting in the MySQL docs.
This all being said, I agree that if you plan to have many, MANY images, you would probably be better off storing the images in the filesystem and not in the DB...
but who am I to tell our good friend Nico that I won't help him since I don't think he should be doing what he wants to do laugh
Hope this helps!
-Rich