BLOB (e sad vidi po dokumentaciji tačno koju veličinu da odabereš - tinyblob, blob, mediumblob, longblob).
Pre upisa u bazu, sadržaj fajla se base64 enkodira pa se u suštini dobija string za upis (ne znam zaista da li mora ovako), čija je veličina veća za trećinu od veličine fajla, koliko se sećam. Nakon čitanja sadržaja iz baze se vrši base64 dekodiranje koje vraća originalni sadržaj fajla.
Ne preporucujem ti da upisujes mp3-eve direktno u bazu, nego da ih cuvas negdje na filesystemu operativnog sistema, a da u bazi cuvas samo putanju do tih mp3 datoteka.
Slazem se da je bolje cuvati putanju do fajla ... ali meni treba da posetioci sajta sami postave odgovarajuci fajl i da se to negde uskladisti, tako da drugi posetioci mogu da download-uju isti taj fajl.
Nije problem. Svi fajlovi za download mogu da se nalaze u jednom direktorijumu. Imena fajlova su idovi iz tabele za download u bazi. U bazu upišeš ime fajla i štogod još smatraš za potrebno (tip, veličina, opis, itd). Program za download za odgovarajući id podešava headere (naziv fajla, tip, veličina, itd) i šalje na output sadržaj fajla s tim idom.