MySql

Em por

Hoje vou deixar mais um repositório em que posso confiar. Sempre precisamos fazer backup de nosso Banco de Dados e nunca deixe de fazer, pois a lei de Murphy está ai e não deseje passar por algumas delas.

backup-e-restore-do-banco-de-dados-mysql

 

Automatizando o backup do Mysql

Uma das maneiras automáticas de se fazer um backup é utilizando o famoso e muito conhecido dos mais antigos é claro (rsrsrs), o arquivo .BAT muito utilizado em MS-DOS e que pode ser considerado arquivo de risco para alguns Antivírus, portanto lembre-se de adicionar ele as listas brancas de seus aplicativos de remoção de vírus de computador.

Vou demonstrar um script muito eficiente que podemos colocar diretamente nas tarefas do Windows e executar de tempos em tempos, ficando o seu critério esta configuração.

Vamos ao script então. Abra um programa do seu gosto, que pode ser um simples Bloco de Notas, Notepad++, enfim qualquer um e coloque o seguinte código nele e salve como:

 Nome-do-arquivo.bat 

 @echo off for /f "tokens=1-4 delims=/ " %%a IN ('DATE /T') do (set MYDATE=%%a%%b%%c%%d) for /f "tokens=1-2 delims=: " %%a in ('TIME /T') do (set MYTIME=%%ah%%bm) SET MYSQL_PATH="C:\\Program Files\\MySQL\\MySQL Server 5.6\\" SET MYSQL_USER=seu-usuario-no-bd SET MYSQL_PASS=sua-senha SET MYSQL_HOST=ip-da-sua-maquina-onde-esta-o-mysql SET MYSQL_PORT=3306 SET NOME_ARQUIVO=nome-do-arquivo-de-backup.%MYDATE%.%MYTIME%.sql SET ARQUIVO="C:\NF-e\Backup BD\Notas\%NOME_ARQUIVO%" SET MYSQL_DATABASE=nome-da-sua-base-de-dados @echo iniciando o backup... @echo. %MYSQL_PATH%\bin\mysqldump.exe -v -v -v --host=%MYSQL_HOST% --user=%MYSQL_USER% --password=%MYSQL_PASS% --port=%MYSQL_PORT% --protocol=tcp --force --allow-keywords --compress --add-drop-table --default-character-set=latin1 --hex-blob --result-file=%ARQUIVO% %MYSQL_DATABASE% @echo. @echo compactando o arquivo... @echo. @echo |TIME /T @echo. cd \ cd Program Files (x86)\WinRAR RAR a "C:\NF-e\Backup BD\Notas\Backup\%NOME_ARQUIVO%.RAR" "C:\NF-e\Backup BD\Notas\*.sql" @echo. @echo Excluindo arquivo de apoio... del "C:\NF-e\Backup BD\Notas\*.sql" @echo. @echo |TIME /T @echo. @echo finalizando o backup... @echo. 

 

Preste bem atenção no caminho, porque pode ser que o Mysql esteja em outra versão, em outra pasta, enfim coloque o caminho correto. Perceba que ele contém \\ em SET MYSQL_PATH, isto é porque uso ele no Windows e em alguns casos precisamos utilizar caracteres de escape.

Com tudo certo, execute o arquivo, isso mesmo, se ainda não sabe o que um arquivo .bat faz, ele funciona igual um executável (duplo clique), por esse motivo alguns programas de remoção de Vírus exclui ele, basta tomar os devidos cuidados para que isso não aconteça e coloca-lo na lista branca de seu aplicativo.

 

Restore do Mysql

 

Se tudo deu certo e você tem o arquivo de backup em mãos, podemos facilmente retorná-lo fazendo a restauração da seguinte maneira:

  • Entre diretamente no painel do Mysql, se for Windows, basta clicar na pasta e depois no executável do Mysql, se for LINUX entre com o usuário ROOT no painel como o seguinte comando:
 #mysql –u root -p
  • Digite a senha de usuário do mysql e depois selecione a base de dados que deseja fazer o restore ou se desejar crie uma para teste (mais adequado pela primeira vez). Com a tabela selecionada, podemos executar o comando a seguir, bastando copiar aquele arquivo gerado pelo backup em algum diretório. No caso do LINUX, mais tranquilo é coloca-lo na pasta /home e depois executamos o seguinte:

 #source /caminho-do-arquivo/nome-do-arquivo.sql

Com isso teremos nosso banco de dados reposto. Mas lembre-se, nunca deixe de fazer backup várias vezes por dia se necessário (sei que é chato e todo mundo reclama), dependendo de quanta informação é atualizada por dia, a Lei de Murphy não perdoa, onde :

"Se existe mais de uma maneira de uma tarefa ser executada e alguma dessas maneiras resultar num desastre, certamente será a maneira escolhida por alguém para executá-la".

 

Bem é isso e até a próxima! wink

Veja Também:

Artigos Relacionados a categoria: MySql

Olá, deixe seu comentário para Backup e Restore do banco de dados Mysql

Já temos 2 comentário(s). DEIXE O SEU :)
Luis

Luis

Seu post é o melhor da internet, foi o único que resolveu meu problema. Parabéns!!!!
Tem como fazer um arquivo .bat para windows com o caminho contrario, ou seja restaurar o backup, como se apagasse o que esta no mysql e restaurasse o backup?
★☆☆☆☆ DIA 11.04.16 13h04 RESPONDER
Leonardo Martins
Enviando Comentário Fechar :/
Marcos Martins

Marcos Martins

Então Luiz, primeiramente legal que te ajudou amigo, realmente procurei muito algo semelhante, fui encaixando mais algumas coisas aqui e ali, pois fiz curso de DOS (aquela preta) e tenho conhecimento em arquivos de Lote. Olha eu nunca tentei fazer o reverso, porém entendo que possa ser feito. Entendo também que seja bastante perigoso, pode apagar um BD errado e olha só, acontece, pois a Lei de Newton tá ai...

Mais uma vez agradeço o contato e se puder, espalhe com quem precisa também.

att Marcos
★★★★★ DIA 20.04.16 22h50 RESPONDER
N/A
Enviando Comentário Fechar :/
Enviando Comentário Fechar :/

...AINDA NÃO VIU NOSSO PORTFÓLIO?

Se ainda não viu nosso Portfólio e quer conhecer um pouco mais... aproveite e veja agora mesmo e tenha um site de qualidade para o seu negócio!

[contato]
Ver o Portfólio Agora