Buenas compañeros!
Tengo un problema al cual no le encuentro la lógica. Mi idea es realizar una copia de seguridad de una base de datos PostgresSQL diaria bajo el sistema operativo Linux-Ubuntu 9. Para ello inicialmente, he ejecutado el siguiente comando en el terminal, obteniendo una respuesta esperada:
$ pg_dump -h localhost -p 5432 -U postgres -F c -b -v -f /home/sbarrera/BACKUP/copia_BD_Openbravo/fechaC.backup openbravo
Al ejecutar dicha sentencia, se me genera un archivo con nombre "fechaC.backup", que es el resultado esperado. El segundo paso es realizar un script para que pueda ser lanzado diariamente por el cron y ahí es donde tengo el problema. El script que me he generado(respaldoBD.sh) es tan sencillo como:
#!/bin/sh
pg_dump -h localhost -p 5432 -U postgres -F c -b -v -f /home/sbarrera/BACKUP/copia_BD_Openbravo/fechaC.backup openbravo
El problema es que cuando ejecuto en el terminal
$source respaldoBD.sh
me reporta el siguiente error : »: FATAL: no existe la base de datos «openbravoa base de datos «openbravo
pg_dump: *** se abortó por un error
No entiendo esto si estoy ejecutando la misma sentencia pero en este caso desde un script. ¿Porqué podria pasar esto?
Nota : tengo el archivo de .pgpass con permisos 0600 y de valor :
*:*:*:postgres:postgres
*:*:*:*:postgres
Espero vuestra ayuda porque ya no se lo que probar, Muchas Gracias.