HiveBrain v1.2.0
Get Started
← Back to all entries
debugsqlMinor

How do I solve an error code 127 when doing a pg_dumpall through a cronjob?

Submitted by: @import:stackexchange-dba··
0
Viewed 0 times
errorthrough127doingcronjobpg_dumpallsolvehowcodewhen

Problem

I have this simple script to backup all my databases in postgres

pg_dumpall -U pg_user > /tmp/tmp.txt
    DUMP_STATUS=$?
    echo "Dump status: $DUMP_STATUS" > /tmp/status.txt


The dump status is 0 and the tmp.txt file is properly created when the script is executed from the command line.

However, if I execute this script as a cronjob in my crontab, my tmp.txt is empty (the dump of all databases failed) and my status.txt file contains a dump status 127.

A strange behavior I noticed is that pg_dumpall will pipe the information into the file but also print it on the terminal. I'm thinking this behavior might be the cause of the problem.

Any idea how I can solve this issue?

I am running FreeBSD:

> uname -mrs  
    FreeBSD 9.1-PRERELEASE amd64

    > psql -V
    psql (PostgreSQL) 9.1.7
    contains support for command-line editing

Solution

If the script can work apart from a crontab, you should make sure of the following:

  • The script file contains the necessary environmental variables



  • $PGHOME



  • $PGDATA



  • $PGPORT



  • $PATH



  • Output the standard error to a file for future analysis

Context

StackExchange Database Administrators Q#31021, answer score: 2

Revisions (0)

No revisions yet.