Gerar backups de banco de dados MySQL
Publicado por Wryel Covo (última atualização em 16/09/2009)
[ Hits: 8.984 ]
Homepage: www.wryel.com
Gerador de backups de banco de dados MySQL, é possível escolher:
- por quantos dias quer conservar os backups mais antigos;
- caminho a ser salvo os backups;
- de quais bancos serão efetuados backups.
#! /usr/bin/python
# Gera backups com o mysqldump e mantem historico de backups antigos.
#
# wryel covo
# www.wryel.com
# ryryel [at] gmail . com
# 15/09/2009
import sys
import commands
import os
from datetime import datetime, timedelta
# declaracao
host = "seu-host"
usuario = "seu-login"
senha = "sua-senha"
bancos = ["banco-de-dados1", "banco-de-dados2"]
historico = 30
pathParaBackups = "/var/www/public_html/backups/"
# inicio
for banco in bancos:
# prepara nomes & variaveis
gerarBackup = banco+"_"+datetime.now().strftime('%d%m%Y')+".sql"
deletarBackupAntigo = pathParaBackups+banco+"_"+(datetime.now()-timedelta(days=historico)).strftime('%d%m%Y')+".sql"
cmd = "mysqldump -h "+host+" -u "+usuario+" --password="+senha+" "+banco+" > "+pathParaBackups+gerarBackup
# executa comando no s.o
commands.getoutput(cmd)
# checa backup gerado
backupGerado = open(gerarBackup)
backupGeradoConteudo = backupGerado.readline()
# se gerou backup com conteudo, deleta backup mais antigo
if len(backupGeradoConteudo) > 1:
try:
os.remove(deletarBackupAntigo)
except OSError:
pass
except Error:
pass
else:
pass
# fecha backup
backupGerado.close()
# fim
sys.exit(0)
yFone - Yes, outra agenda telefonica escrita em python! ;- )
Dump MySQL com relatório de logs por e-mail
Python com CouchDB usando couchdbkit
Acompanhar status de uma replicação MySQL
Dígito verificador, módulo 11 simples, para uso interno no "postgresql" como
Nenhum comentário foi encontrado.
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Gentoo binário em 2026: UEFI, LUKS, Btrfs e Systemd
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Gentoo: Trocando wpa_supplicant pelo iwd no NetworkManager (Systemd)
Instalar Linux em notebook Sony Vaio VPCEG13EB (10)
Vou destruir sua infância:) (6)
Quando vocês pararam de testar distros? (24)









