Backup MySQL


Este script realiza um backup (dump) de todos os banco de dados de um Servidor MySQL (www.mysql.com). Seu funcionamento é bem simples.

Informe o IP do Servidor de Banco de Dados na variavel HOST. O arquivo de backup do banco de dados será criado em /tmp/backup ou qualquer outro que você especificar na variavel TMP.

Para executar este backup de forma automática, siga os passos abaixo.

1-) Crie um usuário no Linux

# useradd -u 101 backup -d /home/backup -s /bin/bash

2-) Crie seu diretório home e altere as permissões deste diretório

#mkdir /home/backup

#chown backup -R /home/backup

3-) Crie o arquivo de configuração (.my.cnf) do MySQL para o usuário backup. Este arquivo somente terá a senha do usuário que irá se conectar no Banco de Dados.

#su - backup

#cd /home/backup

#vi .my.cnf
[client] password       = COLOQUE_AQUI_A_SENHA

4-) Agora acesse o Servidor de Banco de Dados e crie um usuário. Atenção: este usuário não é do Sistema Operacional é um usuário do Banco de Dados.

GRANT SELECT, LOCK TABLES ON *.* TO 'backup'@'localhost' IDENTIFIED BY 'COLOQUE_AQUI_A_SENHA' WITH GRANT OPTION;

FLUSH PRIVILEGES;

 

onde,

backup – é o nome do usuário

COLOQUE_AQUI_A_SENHA – é a senha que o usuário deverá informar para se conectar no Banco de Dados.

5-) Agora salve o script de backup no diretório pessoal (/home/backup) do usuário backup.

#gunzip backup_mysql.sh

6-) Para que o backup seja realizado automaticamente, falta apenas inserir uma tarefa no crontab. Para isso digite:

#crontab -u backup -e

Insira a seguinte linha, para agendar a execução do script de backup.

30 23 * * * /hoba/backup/backup_mysql.sh

Não esqueça de dar permissão de execução ao script, com o comando:

#chmod +x /home/backup/backup_mysql.sh

Comentários são bem vindos!! 🙂

2 pensamentos em “Backup MySQL”

  1. olá me consegue o arquivo do script do backup do mysql backup_mysql.sh.gz?

    aqui no link não tá encontrando!

    quero ver como vc faz o backup dos privilegios de cada base de dados

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *