Backup Mydumper + Screen + Compactação com 7Zip
Publicado por Luis Alfredo Ribeiro da Silva (última atualização em 27/10/2015)
[ Hits: 3.192 ]
Homepage: www.geweb.com.br
Sr(a)s bom dia,
Este script tem como objetivo facilitar o processo de backup, hoje eu utilizo este script para realizar backups dos meus servidores.
O script faz a interação direta com o servidor.
A rotina gera o dump, compacta e salva na pasta indicada, no caso do nosso script em: /opt/lampp/htdocs/bkp/codigodaempresa/tipodebackup
Estou deixando comentado no script a rotina para voltar o backup.
<?php if (empty ($argv)){ $t=$_GET; $codemp = $t['codemp']; if ($t['caminho']==1){ $caminho="mensal"; $data = date('M'); }else{ $caminho="diario"; $data = date('d'); } }else{ $t=$argv; $codemp = $t[1]; if ($t[2]==1){ $caminho="mensal"; $data = date('M'); }else{ $caminho="diario"; $data = date('d'); } } include_once 'siteconfig.php'; $sock="/opt/lampp/var/mysql/mysql.sock"; $database=$dbcfg["database"]; $dir="/tmp/$database"; $f="/tmp/$database/*"; $admuser=$dbcfg["admuser"]; $admpasswd=$dbcfg["admpasswd"]; $destino="/opt/lampp/htdocs/bkp/".$codemp."/".$caminho."/"; $nome_backup="$database-$data.7z"; print" <script LANGUAGE=\"JavaScript\"> alert(\"O backup será iniciado, ( OK? ).\"); </SCRIPT>"; print "<pre>"; print "<b>Salvando no caminho: " . ($destino) . '<br>' . '</b>'; print "<b>Nome: " . ($nome_backup) . '<br>' . '</b>'; system("rm /var/run/screen/S-nobody/*"); system("screen -dmS bkp"); system("screen -s bkp -X stuff"); system("mydumper -S '".$sock."' -t 2 -v 3 -B '".$database."' -u '".$admuser."' -p '".$admpasswd."' -h localhost --outputdir '".$dir."' --less-locking && 7za a -mhe=on -p'".$admpasswd."' '".$destino."''".$nome_backup."' '".$f."'"); //system("screen -S 1940.bkp -p 0 -X quit"); system("rm /var/run/screen/S-nobody/*"); system("rm -r ".$dir.""); /* #Lembrete de como retorna - Retornando backup myloader -d $dir -S $sock -B $database -u $admuser -p $admpasswd -t 2 -v 3 */ ?>
Gravando conteudo de uma caixa de texto no banco de dados
Testando servidor MySQL e base de dados
Classe de conexão ao banco usando PDO
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
SysAdmin ou DevOps: Qual curso inicial pra essa área? (0)
Melhores Práticas de Nomenclatura: Pastas, Arquivos e Código (3)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta