Script para la toma de SQL DUMP


0

Estoy escribiendo el script para tomar el volcado SQL & amp; cerrarla

#!/bin/sh
DBUSERID="root"
DBPASSWORD="XXXXXXXX"
BACKUP_DIR="$HOME/daily_sql_backups"
DATE=`date +%Y_%m_%d_%H_%M_%S`
cd $BACKUP_DIR
mysql -u$DBUSERID -p$DBPASSWORD  --socket=/data/mysql/mysql.sock -e 'show databases' | grep abcd >MICRO_SERVICES.txt

sed -e '/^abcd_prod$/d' MICRO_SERVICES.txt > MICRO_SERVICES_DB.txt 
cat MICRO_SERVICES_DB.txt | while read line
do
    DB=$line
    mysqldump --opt --user=${DBUSERID} --password=${DBPASSWORD} --socket=/data/mysql/mysql.sock ${DB} > $DB_$DATE.sql 2> "$DB"_"$DATE".err
    gzip $DB_$DATE.sql
    status=$?
    err=`cat "$DB"_"$DATE".err |wc -l`
    DATE_COMPLETED=$(date "+%F # %T")
    if [ $err -eq 0 -a $status -eq 0 ]
    then
       echo "$DATE_COMPLETED : DB backup success" >>/backup_logs/"$DB"_backup-$(date +%b-%Y).txt
       echo "$DATE_COMPLETED : DB backup success"
    else
       echo "$DATE_COMPLETED : DB backup FAILURE" >> /backup_logs/"$DB"_backup-error-$(date +%b-%Y).txt
       cat "$DB"_"$DATE".err >>/tmp/"$DB"_backup-error-$(date +%b-%Y).txt
       cat "$DB"_"$DATE".err |mail -s "$DB: dump failure" devops@xxxx.com
    fi
   sleep 1m
done

Recibo el error "gzip: /home/XXXXXX/daily_sql_backups/2017_12_07_14_28_02.sql.gz ya existe; no se ha sobrescrito" Y estoy recibiendo el error de volcado de volcado. ¿Podría alguien, por favor, hacerme saber dónde estoy haciendo mal?


Usted podría usar gzip -f. Eso obligaría a sobrescribir cualquier información existente, pero debe asegurarse de que realmente no haya datos allí.
td512

En realidad funcionó cuando usé "$ DB" _ "$ DATE" .sql en lugar de $ DB_ $ DATE.sql. ¿Alguien puede explicar por qué?
Prashast

Ejecute su script a través de chequeo y te dará algunas pistas.
Darren

Respuestas:


0

En realidad funcionó cuando lo usé

"$DB"_"$DATE".sql 

en lugar de

$DB_$DATE.sql. 

¿Alguien puede explicar por qué?

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.