Someone in our company wrote a script that backs up data from a certain table, that person left the company and no one is able to figure it out. Part of this script has something like, look at the COPY BINARY command just below:
EXPORTFILE=${EXPORTFILE}.${AUD_UP_TO}_${MAX_AUDIT}
$PSQL -c "COPY BINARY dailybackup TO '$EF_PATH/$EXPORTFILE';"
if [ $? -eq 0 ]; then
cd $EF_PATH
tar cvzf ${EXPORTFILE}.tar.gz ${EXPORTFILE}
if [ $? -ne 0 ]; then
echo -e "Error while compressing tar file : " > /tmp/backup.trickle.state
echo `date` >> /tmp/backup.trickle.state
fi
echo "Backup to backup disk successful"
echo "Update trickle checkpoint"
${ANT} run -Dclass=ucs.instore.ejb.system.SetTrickleCheckpoint -Darg1=${MAX_AUDIT}
I tried to untar the file which went through fine, but now inside the file there is funny characters, see below:
PGBCOPY
ÿ^M
^@^D^C^B^A^@^@^@^@^@^@^@^@^R^@^D^@~UIS^@ÿÿ ^@^@^@1~1~1^D^@^É^@^@^D^@^@^@^@^@ÿÿ^K^@^@^@day_endÿÿ^K^@^@^@central^H^@wIôðå϶Aÿÿ¶^B^@^@<?xml version="1.0" encoding="UTF-8"?>^M
I am aware of the following format, but can’t figure out how many characters should I specify and this backup system doesn’t use pg_dump command?
COPY [ BINARY ] table_name [ WITH OIDS ]
FROM { 'filename' | STDIN }
[ [USING] DELIMITERS 'delimiter' ]
[ WITH NULL AS 'null string' ]
Thanks in advanced