Automysqlbackup

De MochilaWiki

Automysqlbackup é um script em bash para automatização de backup para mysql. É possível configurar para que seja executado a tarefa para todos os bancos de dados ou espeficar o banco. Os backups podem ser diária, semanal e mensal. Basta instalar e colocar regras na agenda (cron). Faz logs e envia mensagem com o relatório para o e-mail configurado.

página do projeto

instalando

apt-get install automysqlbackup

ou

wget http://pub.nkosi.org/mysqldump/automysqlbackup-2.5.1-01.sh
chmod 755 automysqlbackup-2.5.1-01.sh
mv automysqlbackup-2.5.1-01.sh /usr/local/bin/automysqlbackup.sh

regra pro cron

# roda o automysqlbackup.sh todos dias as 5:45
45 5   * * *   root    /usr/local/bin/automysqlbackup.sh >/dev/null 2>&1

customização

DBEXCLUDE="information_schema"
CREATE_DATABASE=yes
LATEST=yes 

observação:

  • os backups ficaram em /srv/backup/db: daily (diário), month (mês), weekly (semanal)

mensagens de erros

nessa mensagem Warning: Skipping the data of table mysql.event. Specify the --events option explicitly., resolvi colocando em /etc/mysql/debian.cnf

[mysqldump]
ignore-table = mysql.event


em MySQL 5.6 dá a mensagem de erro warning using a password on the command line interface can be insecure, coloque abaixo da linha 115 o código

# Remove annoying warning message since MySQL 5.6
if [[ -s "$log_errfile" ]]; then
sedtmpfile="/tmp/$(basename $0).$$.tmp"
grep -v "Warning: Using a password on the command line interface can be insecure." "$log_errfile" > $sedtmpfile
mv $sedtmpfile $log_errfile
fi

fonte: http://www.redeo.nl/2013/11/automysqlbackup-warning-using-password-command-line-interface-can-insecure/