Me ha vuelto a llegar de nuevo la pregunta de si es más interesante guardar las imágenes dentro de la base de datos o en el sistema de ficheros del Servidor.
Para todos aquellos que tengais dudas de cómo almacenar imagenes en MySQL, hace bastante tiempo escribà un artÃculo que os puede resultar interesante.
En general, mi experiencia sobre el tema me lleva a recomendar que se use el sistema de ficheros del servidor antes que guardar la imagen directamente dentro de la base de datos.
Algunos de los inconvenientes que me he encontrado:
- lentitud en las consultas a la tabla que contiene las imágenes.
- dificultad a la hora de recuperar las imágenes.
- dificultad a la hora de exportar la información de la base de datos e importarla en otro servidor / base de datos.
- sobrecarga del servidor (más pasos e instrucciones para conseguir algo que puede ser muy simple).
- etc.
Además, el tener disponibles las imágenes en carpetas del servidor os permitirá usar de forma sencilla herramientas de redimensionado y retoque como la biblioteca GD o las de imagemagick.
Por lo tanto, mi recomendación es – siempre que sea posible – evitar guardar las imágenes directamente en la base de datos.
Hola Manuel, gracias por tus sugerencias, soy nuevo en el php, pero estoy haciendo una aplicacion que cabalmente debe de guardar imagenes y al parecer voy a poner en pratica esta sugerencia. y una preguntita donde puedo conseguir algun codigo que ya me guarde los archivos en alguna carpeta del servidor?
gracias mil.