VI
sistema

Sistema De Backup De Database Perfeito

Por Victor8, 09 de out. de 2012 em Tutoriais de Websites

database
data base
my sql
tibia
script
otserv
12
5.4k
Victor8V
09 de outubro de 2012 às 05:37

Olá, não sei se estou na área correta. Mas considero isso um script e um sistema.



 

 

Estavam sempre brigando comigo, porque eu nunca posto nada... enfim esta ai uma utilidade.

 

SISTEMA DE BACKUP DE DATABASE PERFEITO VIA DOS

 

 

 

Nome: Sistema de Backup de Data Base

Versão: 1.1

Autor: Victor8

Descrição: Através de um batch script (Comandos de DOS) ele faz um backup inteiro da sua data base. Ele cria uma pasta com o dia e a hora que foi feito o backup. Totalmente diferente e na minha opinião melhor que o feito através do php, porque com esse sistema você copia a data base em si, inteira. Agora você pode dormir tranquilo.

 

 

 

 

 

Requerimentos para usar

 

- Banco de dados MYSQL.

- Sistema operacional Windows.

 

 

Tutorial de como usar

 

1- Copie o código que esta no fim do tópico.

2- Abra o bloco de notas e cole o código lá.

3 - Altere as duas primeiras linhas do código com a sua configuração.

 

set pasta_do_mysql_no_xampp=C:\xampp\mysql\data\itibia
set pasta_aonde_vai_ir_os_arquivos_de_backup=C:\Documents and Settings\Administrador\Desktop\Backup mysql

 

 

Atenção ao editar suas configurações!

 

Na primeira linha coloque a pasta do banco de dados que você quer fazer backup.

Normalmente ela esta em C:\xampp\mysql\data

O nome do meu banco de dados é itibia.

Então eu coloquei :

C:\xampp\mysql\data\itibia

 

Na segunda linha coloque o local que você quer que seja criado a pasta de backup.

Eu coloquei:

C:\Documents and Settings\Administrador\Desktop\Backup mysql

 

 

Vamus dar um exemplo.

Se o nome do meu banco de dados fosse The forgoten server

E se eu quisesse que a pasta de backup fosse para o desktop ficaria assim:

 

set pasta_do_mysql_no_xampp=C:\xampp\mysql\data\The forgoten server
set pasta_aonde_vai_ir_os_arquivos_de_backup=C:\Documents and Settings\Administrador\Desktop

 

 

4 - Depois de configurado... Você salva o documento (control+s). E no nome do arquivo coloque:

Backup da database.bat

 

 

E pronto! Toda vez que você clicar nesse arquivo... Ele vai copiar a sua database para uma pasta.

Ai se dar algum problema com o OT. Você já tem salvo ;D

 

 

 

Dica

 

Utilize esse programa com as tarefas agendadas do windows. Ai você escolhe um horário por dia.. que ele se executara automaticamente.

No meu ot, ele esta para fazer o backup todo dia as 6 horas da manha e as 6 horas da noite.

 

Fim.

 

 

Resultado:

 

imagemuru.jpg

 

 

 

 

 

Código : (Linguagem batch script CMD Command)

 

set pasta_do_mysql_no_xampp=C:\xampp\mysql\data\itibia
set pasta_aonde_vai_ir_os_arquivos_de_backup=C:\Documents and Settings\Administrador\Desktop\Backup mysql




time /t>%temp%\#
set /p hora=<%temp%\#
set hora=%hora::=h%min
for /f "tokens=2 delims= " %%a in ('date /t') do set data=%%a
set data=%data:/=-%

@echo off
cls
cd \
title Sistema de Backup de Data Base
echo.
Echo ----------- Sistema de backup de database -----------
echo.
echo.
echo Verificando as configuracoes das pastas que voce colocou...
echo.
msg/time:2 /w * "Aguarde..."
if exist "%pasta_do_mysql_no_xampp%" (goto ok) else (goto naook)
:ok
if exist "%pasta_aonde_vai_ir_os_arquivos_de_backup%" (goto ok1) else (goto naook1)
:naook
cls
echo.
Echo ----------- Sistema de backup de database -----------
echo.
echo.
echo A pasta %pasta_do_mysql_no_xampp%
echo Parece ser invalida, verifique o endereco.
echo.
msg/time:2 /w * "Fechando..."
exit
:naook1
cls
echo.
Echo ----------- Sistema de backup de database -----------
echo.
echo.
echo A pasta %pasta_aonde_vai_ir_os_arquivos_de_backup%
echo Parece ser invalida, verifique o endereco.
echo.
msg/time:2 /w * "Fechando..."
exit
:ok1
cls
echo.
Echo ----------- Sistema de backup de database -----------
echo.
echo.
echo As suas configuracoes parecem estar corretas.
echo Iniciando as tarefas..
echo.
msg/time:2 /w * "Aguarde..."
cls
Echo ----------- Sistema de backup de database -----------
echo.
echo.
echo Fazendo o backup dos arquivos...
echo.
echo.
md "%pasta_aonde_vai_ir_os_arquivos_de_backup%\backup"
copy "%pasta_do_mysql_no_xampp%" "%pasta_aonde_vai_ir_os_arquivos_de_backup%\backup"
ren "%pasta_aonde_vai_ir_os_arquivos_de_backup%\backup" "Backup(%data%)(%hora%)"
msg/time:5 /w * "Fazendo o backup dos arquivos..."
echo.
echo.
msg/time:2 /w * "Aguarde..."
cls
echo.
Echo ----------- Sistema de backup de database -----------
echo.
echo.
echo Backup completado!
echo.
echo.
msg/time:2 /w * "Fechando..."

Editado Outubro 9 por Victor8

grafit123G
10 de outubro de 2012 às 01:36

Bacana... salvou direitinho

 

mas como eu importo isso no banco de dados?

Victor8V
10 de outubro de 2012 às 04:03

Bacana... salvou direitinho

 

mas como eu importo isso no banco de dados?

 

Seguinte amiguinho.

 

Ali na pasta : C:\xampp\mysql\data tem todas as suas databases.

 

Se dar algum problema em alguma. Você simplesmente vai lá na sua pasta de backup e renomeia ela com o nome do seu banco de dados... e joga la no C:\xampp\mysql\data.

 

Ai quando você abrir o phpmyadmin. Vai estar lá o seu banco de dados restaurado e perfeito.

 

Isso é bom pra quem tem OT grande! Não tem como ficar sem fazer backup. Já pensou se um hacker consegue acessar a data base.. e lasca tudo ? Ai você tem o backup ;D

grafit123G
10 de outubro de 2012 às 16:22

to ligado...

 

eu tinha tentado fazer isso...

 

ai eu criei um banco de dados novo, e joguei os arquivos la pela pasta do xampp, mas só "importou" algumas tabelas... fiz algo errado?

 

 

---edit---

 

creio que o meu erro foi eu ter criado um "novo" banco dados, com um nome diferente daquele que eu fiz o backup...

 

 

se eu criar um com o mesmo nome e jogar os arquivos eu acredito que carreguem todas as tabelas..

 

 

bom script =P

Editado Outubro 10 por grafit123

Victor8V
12 de outubro de 2012 às 00:55

to ligado...

 

eu tinha tentado fazer isso...

 

ai eu criei um banco de dados novo, e joguei os arquivos la pela pasta do xampp, mas só "importou" algumas tabelas... fiz algo errado?

 

 

---edit---

 

creio que o meu erro foi eu ter criado um "novo" banco dados, com um nome diferente daquele que eu fiz o backup...

 

 

se eu criar um com o mesmo nome e jogar os arquivos eu acredito que carreguem todas as tabelas..

 

 

bom script =P

 

Isso ae cara!

 

Ou você pode jogar os arquivos que estão dentro para a pasta da database que esta com o nome trocado. tambem funciona :D

Piabeta KunP
16 de outubro de 2012 às 13:47

Ótimo tutorial

Reputado e fixado!

2 semanas depois...
MrCatraM
24 de outubro de 2012 às 11:04

Cara,muito bom adorei.

 

Pena que ja dei rep,quando desbloquea eu do rep.

 

Mais muito bom mesmo.

4 meses depois...
MaaythugM
03 de fevereiro de 2013 às 05:56

Fiz tudo certinho, mas não apareçe a data nem a hora quando salva!!

Victor8V
04 de fevereiro de 2013 às 19:31

Cara da uma olhada nas configurações que você usou.

Me diz aonde ele para, ai eu posso te ajudar.

 

Cara, não tem como o script estar errado. É comando de windows.

rickserragliaR
08 de fevereiro de 2013 às 12:18

muito util... estou pensando em colocar no meu servidor

KaduTellesK
12 de fevereiro de 2013 às 22:56

Pra mim deu certo, apenas não colocou na pasta backup a data e a hora, seria legal cada vez que a gente clicar

o arquivo criasse uma pasta nova com os arquivos dentro e a data e hora no nome da pasta.

 

vê o que da pra fazer aí.

 

Vlw, obrigadão

 

mesmo assim ganhou um Rep++

Editado Fevereiro 12 por KaduTelles

5 anos depois...
LuhfeL
14 de junho de 2018 às 11:02

Sem querer reviver mas já revivendo o tópico, alguém poderia editar pra não substituir os arquivos? e sim criar uma nova pasta com o nome e hora do backup, pois este não ta indo com a hora (Ta copiando direitinho mas sem data), até me serviu bem :)