De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Ernesto Charles Niklaus
Data de Publicação: 20 de outubro de 2013
Em 2011 publiquei uma dica usando comando Find para deleção de arquivos, e usei a limpeza de antigos arquivos de backup da minha base de dados usando esta ferramenta como exemplo. Nos comentários da dica o André Gomes havia me perguntado sobre esta ferramenta de backup de MySQL e respondi apenas mandando o link.
Hoje lendo a dica do Cesar Brod sobre "Por que contribuir para o Dicas-L", resolvi reler minhas dicas e procurar algo que tenha sido publicado sobre esta poderosa ferramenta. Como não encontrei nada decidi compartilhar o que para mim tem sido a solução para backup das minhas bases de dados Mysql.
Vamos à Dica:
AutoMySQLBackup com uma configuração simples pode criar backups Diários, Semanais e Mensais de uma ou mais bases de dados MYSQL localizados em um ou mais servidores. Além disso esta ferramenta inclui funções como:
# Username to access the MySQL server e.g. dbuser CONFIG_mysql_dump_username='seu usuário, pode ser o root' # Password to access the MySQL server e.g. password CONFIG_mysql_dump_password='sua senha' # Host name (or IP address) of MySQL server e.g localhost CONFIG_mysql_dump_host='localhost ou ip do seu servidor MYSQL' # Backup directory location e.g /backups CONFIG_backup_dir='/pasta/onde/ficara/o/backup'
# Databases to backup
# List of databases for Daily/Weekly Backup e.g. ( 'DB1' 'DB2' 'DB3' ... )
# set to (), i.e. empty, if you want to backup all databases
#CONFIG_db_names=()
# You can use
#declare -a MDBNAMES=( "${DBNAMES[@]}" 'added entry1' 'added entry2' ... )
# INSTEAD to copy the contents of $DBNAMES and add further entries (optional).
# List of databases for Monthly Backups.
# set to (), i.e. empty, if you want to backup all databases
#CONFIG_db_month_names=() -> Aqui insira o nome das bases de dados, ou deixe em branco para fazer backup de todas
# List of DBNAMES to EXLUCDE if DBNAMES is empty, i.e. ().
#CONFIG_db_exclude=( 'information_schema' )
# List of tables to exclude, in the form db_name.table_name
# You may use wildcards for the table names, i.e. 'mydb.a*' selects all tables starting with an 'a'.
# However we only offer the wildcard '*', matching everything that could appear, which translates to the
# '%' wildcard in mysql.
#CONFIG_table_exclude=()
Se você utilizou o install.sh o configurador já colocou o script em
/usr/sbin/automysqlbackup. então é só executar automysqlbackup e ver seu
backup aparecer na pasta selecionada.
Para automatizar o processo, você pode incluir uma chamada do script em
cron.daily
$ vi /etc/cron.daily #!/bin/sh test -x /usr/sbin/automysqlbackup && /usr/sbin/automysqlbackup
Ernesto Charles Niklaus é especialista em EDI na Applied Solutions