Lieber pl,
Z.b. kann man beim Upload bestimmte Metadaten (Exif) rausziehen uind in dedizierten Feldern ablegen. Und wie ich schon schrieb, einen optionalen Titel und Beschreibung. Auf diese Felder eine Suchfunktion zu legen kann durchaus sinnvoll sein.
diese Felder benötigen aber keines, das den binären Dateiinhalt in Gänze enthält. Es ist ebenso gut möglich, zu den Metadatenfeldern noch ein Pfad-Feld zu speichern, welches die Datei im Dateisystem beschreibt. Dann liegt die Datei selbst eben doch nicht in der DB und die von Dir genannten Vorteile sind trotzdem verfügbar.
Und ja, Vorsicht beim Upload
Das ist ein grundsätzliches Problem und gehört zu den Hausaufgaben eines jeden Erstellers einer Webapplikation, dass er/sie hier sehr empfindlich auf Sicherheitsaspekte prüft.
Das Mindeste ist also, den Namen zu ändern.
Das halte ich für Blödsinn. Viel sinnvoller halte ich die Ausgabe der Datei durch ein passendes Script, welches dann eben "von Hand" tun muss, was ansonsten der Webserver "von Haus aus" tun könnte - wenn man keine Konfigurationsmöglichkeiten hat, dass er Scriptdateien dort bitte eben gerade nicht ausführen möge.
Oder die Metadaten nach DB schreiben und die Bilder in der DB referenzieren.
Siehste, jetzt biste bei mir - nur beschränke ich das nicht auf Bilder, sondern erweitere es auf alles.
Liebe Grüße,
Felix Riesterer.