Backup Mydumper + Screen + Compactação com 7Zip
Publicado por Luis Alfredo Ribeiro da Silva (última atualização em 27/10/2015)
[ Hits: 3.357 ]
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 */ ?>
protegendo suas páginas de maneira eficiente
Classe de conexao com banco de dados mysql
eveQuery2: interação com banco de dados
Nenhum coment�rio foi encontrado.
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Visualizar arquivos em formato markdown (ex.: README.md) pelo terminal
Dando - teoricamente - um gás no Gnome-Shell do Arch Linux
Como instalar o Google Cloud CLI no Ubuntu/Debian
Mantenha seu Sistema Leve e Rápido com a Limpeza do APT!
Procurando vídeos de YouTube pelo terminal e assistindo via mpv (2025)
Sinto uma leve lentidão ao arrastar, miniminizar e restauras as janela... (3)
Alguém já usou o framework Avalonia para desenvolver interfaces de usu... (4)
Ajuda Pra Melhoria do NFTABLES. (8)
Pastas da raiz foram para a área de trabalho [RESOLVIDO] (7)