Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/10/2012, 01:58
Canal_on
 
Fecha de Ingreso: julio-2007
Mensajes: 16
Antigüedad: 17 años, 5 meses
Puntos: 2
LOAD DATA INFILE en un Hosting.Problemas

Hola

La situación es la siguiente:
  • La base de datos (Mysql) y el servidor Apache están en un hosting externo.
  • Este hosting usa un servidor para la base de datos y otro para las páginas PHP.
  • Yo tengo acceso a la parte Apache, pero no al servidor de base de datos Mysql: no puedo colocar en el mismo ningún fichero a través de ftp o similar (por seguridad del hosting).
  • Intento automatizar algún proceso diario a través de un PHP que se ejecutaría diariamente con el cron, en concreto la actualización del stock (es una tienda on line).
Para ello, subo todos los días a una carpeta de mi dominio el fichero con el nuevo stock y el PHP debe cargar el csv en una tabla intermedia y luego updatar de forma controlada la tabla de stock. Finalmente trunca la tabla intermedia para dejarla lista para el siguiente día.

Cada una de estas fases es ok con los permisos del usuario, los nombres de la tabla, etc, cuando las voy ejecutando paso a paso en el PhpMyAdmin, excepto en el LOAD DATA INFILE

El problema viene con el LOAD DATA INFILE, ya que no encuentra el fichero en el lugar que le digo que está.

He leído en la documentación que si se pone el nombre del fichero sin ruta, Mysql considera que lo tiene en local (en este caso en el servidor de base de datos al que no tengo acceso).

En caso contrario hay que usar el LOAD DATA LOCAL INFILE, pero considerando que el ‘ordenador’ que está ejecutando el proceso es en este caso el servidor del hosting desde el que se ejecuta mi Php.

He probado de todas las formas que se me ocurren pero siempre da el mismo error de ‘file not found’.

He probado con :

LOAD DATA LOCAL INFILE ‘http://www.midominio.com/upload/stocdiario.csv’
LOAD DATA INFILE ‘http://www.midominio.com/upload/stocdiario.csv’
LOAD DATA INFILE ‘upload/stocdiario.csv’
LOAD DATA LOCAL INFILE ‘upload/stocdiario.csv’
LOAD DATA INFILE ‘./upload/stocdiario.csv’

Y otras variantes que ya no recuerdo… ¿alguien me puede orientar?

Gracias por contestar ¡

Fernando