Fai il backup di MySQL, usando Screen e Crontab


1

Sto provando a fare il backup della tabella del mio database ogni giorno, usando mysqldump, screen e crontab. Se eseguo solo mysqldump, esegue il dump corretto, ma se lo eseguo tramite screenil file di output è vuoto.

Modifica di Crontab

crontab -e

Aggiunta di comando

0 0 * * * screen -dmS MYDATABASE_MYTABLE_backup mysqldump -u MYUSERNAME -pMYPASSWORD -h MYHOSTNAME MYDATABASE MYTABLE --compress | gzip > /root/backup/database/MYDATABASE_MYTABLE_`date +\%Y-\%m-\%d`.sql.gz

Risposte:


0

Non sono sicuro di ciò che vuoi realizzare con lo schermo in questo scenario e perché è necessario. Ma stai eseguendo il piping (con | ..>) l'output dello schermo nel file di dump, non l'output del programma che viene eseguito sullo schermo. O devi racchiudere il comando completo tra virgolette - o probabilmente mettere meglio il comando in un file di script e chiamare invece lo script in modo semplice

myscript.sh:

#!/bin/sh
mysqldump -u MYUSERNAME -pMYPASSWORD -h MYHOSTNAME MYDATABASE MYTABLE --compress | gzip > /root/backup/database/MYDATABASE_MYTABLE_`date +\%Y-\%m-\%d`.sql.gz

screen -dmS MYDATABASE_MYTABLE_backup myscript.sh

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.