MySql
Backup e Restore do banco de dados Mysql
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.
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! =)
Gigasystems Login:
Informe seu e-mail abaixo para continuar!
XVeja Também:
Artigos Relacionados a categoria: MySql
Formatando datas no MySql com DATE_FORMAT()
20 March de 2015
SQL_CACHE otimizando suas consultas SQL do MySql
20 March de 2015
UPDATE a partir de um SELECT, JOIN
28 January de 2015
SQL Stored Procedures e Fucntions com Mysql
30 November de 2014
Olá, deixe seu comentário para Backup e Restore do banco de dados Mysql
Luis
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?
Marcos Martins
Mais uma vez agradeço o contato e se puder, espalhe com quem precisa também.
att Marcos