Pro MySQL:
- The BLOB may be subject to foreign keys and thus keeping the database redundant as opposed to saving to the filesystem. In this case you have to program the deleting of the file.
- Finegrained user permissions.
Con:
- MySQL doesn't run for free, it comes with overhead as opposed to the serving from the filesystem.
- Webservers can't directly serve BLOBs from the database. This means PHP will have to mediate the process. When the BLOB gets loaded from MySQL into PHP, the memory usage will be atleast as large as the BLOB. So in your case where files could be running into the hundreds of MB's this would put enormous strain on the webserver.
In all reality MySQL isn't ment to be used to save files. BLOBs are mostly used to save lare ammounts of serialized data such as caches.