Instalar e configurar AutoMySQLBackup no Xampp em Linux

Instalar e configurar AutoMySQLBackup no Xampp em Linux


Gostaria de partilhar aqui um excelente programa para fazer backup das nossas bases de dados MySQL.

O programa chama-se "AutoMySQLBackup" é simples e é executado a partir do terminal.

A instalação do AutoMySQLBackup também é simples.

Primeiro descarregar AutoMySQLBackup no meu caso a versão automysqlbackup-v3.0_rc6.tar.gz do site:

http://sourceforge.net/projects/automysqlbackup/

No terminal

Mover e descompactar o ficheiro

mv ~/Downloads/automysqlbackup-v3.0_rc6.tar.gz /tmp
cd /tmp
tar zxvf automysqlbackup-v3.0_rc6.tar.gz

Executar o ficheiro de instalação:

sudo ./install.sh

Devem surgir duas perguntas no assistente de instalação

global configuration directory: default
directory for the executable: default

Agora damos permissões:

cd /etc/automysqlbackup
sudo chmod a+r ./*

 

Agora temos de configurar o nosso ficheiro para corresponder às nossas configurações de sistema.

No meu caso tenho o xampp instalado, por isso tenho de levar em conta os caminhos que podem ser outros.

sudo gedit /etc/automysqlbackup/automysqlbackup.conf

Editamos:

# Edit $PATH if mysql and mysqldump are not located in /usr/local/bin:/usr/bin:/bin:/usr/local/mysql/bin
#PATH=${PATH}:FULL_PATH_TO_YOUR_DIR_CONTAINING_MYSQL:FULL_PATH_TO_YOUR_DIR_CONTAINING_MYSQLDUMP
PATH=${PATH}:/home/USER/lampp/var/mysql:/home/USER/lampp/var/mysql

# Basic Settings

# Username to access the MySQL server e.g. dbuser
CONFIG_mysql_dump_username='root'

# Password to access the MySQL server e.g. password
CONFIG_mysql_dump_password='tuasenha'

# Host name (or IP address) of MySQL server e.g localhost
CONFIG_mysql_dump_host='localhost'

# "Friendly" host name of MySQL server to be used in email log
# if unset or empty (default) will use CONFIG_mysql_dump_host instead
#CONFIG_mysql_dump_host_friendly=''

# Backup directory location e.g /backups
CONFIG_backup_dir='/home/USER/lampp/automysqlbackup'

# For connections to localhost. Sometimes the Unix socket file must be specified.
#CONFIG_mysql_dump_socket=''
CONFIG_mysql_dump_socket='/home/USER/lampp/var/mysql/mysql.sock'

 

Agora se tudo estiver certo vamos tentar executar o programa.

Tens de ser o xampp iniciado

No terminal escreve:

sudo automysqlbackup

Se não ocorrer nenhum erro já deves ter as cópias na pasta que foi definida em CONFIG_backup_dir

No meu caso não tive a sorte de correr bem tudo à primeira.

Estava a surgir o erro:

Errors reported during AutoMySQLBackup execution.. Backup failed
Error log below..
-- Warning: Skipping the data of table mysql.event. Specify the --events option explicitly.

Para resolver este erro temos de editar o ficheiro my.cnf do mysql.

Por algum motivo encontrei dois no meu sistema
/opt/lampp/etc/my.cnf
Mas também tenho em:
/etc/mysql/my.cnf (foi ao editar este ficheiro que resolvi o problema.

adicionar na secção:

[mysqldump]
events
ignore-table=mysql.events

 

Reinicia o xampp e tenta de novo.

No terminal escreve:

sudo automysqlbackup

Com sorte já está a fazer cópias.

No meu caso ainda tive mais uns erros para corrigir.

Erro

mysqldump: Got error: 1142: SELECT,LOCK TABL command denied to user



Para resolver este erro voltamos a editar automysqlbackup.conf:

sudo gedit /etc/automysqlbackup/automysqlbackup.conf


Alteramos a linha CONFIG_db_exclude

CONFIG_db_exclude=( 'information_schema' 'performance_schema' )

Agora já deve estar tudo configurado para conseguires as tuas cópias.

No terminal escreve:

sudo automysqlbackup

Sucesso!

Boa sorte

Vê também: Agendar os backups AutoMySQLBackup

Help link:

http://stackoverflow.com/questions/2482234/how-to-know-mysql-my-cnf-location