Backup do banco de dados e envio para e-mail
por
em 28-06-2014 às 22:51 (4210 Visualizações)
Olá galera, vou disponibilizar para vocês um script em php para backup do seu banco de dados e enviar o backup para um email.
Para enviar por email utilizei o phpmailer
backupDBmail.php
Código :<?php ################################### ## Script de backup do banco de ## ## Dados com envio para e-mail ## ## Autor: Douglas Noronha ## ## Data da Criacao: 27/06/2014 ## ################################### $server = "localhost"; $username = "root"; $password = "123456"; $db = "banco"; //nome do banco de dados para backup $dir = "/backup"; //Diretorio onde ser feito o backup $nameBK = $db."-".date('Y-m-d-H-i-s'); //nome do arquivo echo "\r\nCriando backup do Banco de dados!"; $command = "mysqldump -h $server -u$username -p$password $db > ".$dir."/".$nameBK.".sql"; shell_exec($command); echo "\r\nCompactando arquivo\r\n"; //Conforme seu Sistema Operacional e programa de compactação de arquivos $compact = 'tar -cjf '.$dir.'/'.$nameBK.'.tar -C '.$dir.' '.$nameBK.'.sql --remove-files'; shell_exec($compact); echo "\r\nBackup realizado com sucesso!"; echo "\r\nEnviando backup para e-mail!"; //Endereço do phpmailer require '/phpmailer/PHPMailerAutoload.php'; $mail = new PHPMailer(); $mail->isSMTP(); $mail->Host = 'smtp.servidor.com'; $mail->Port = 587; $mail->SMTPSecure = 'tls'; $mail->SMTPAuth = true; $mail->Username = "[email protected]"; //usuário do email $mail->Password = "123456"; //senha do email $mail->setFrom("[email protected]"); //o email de quem está enviando $mail->Subject = 'Backup do banco de dados'; $mail->addAddress('[email protected]', 'User1'); //para qual email será enviando $mail->msgHTML("Recenbendo backup do banco de dados"); //corpo da mensagem $mail->AddAttachment($dir."/".$nameBK.".tar"); //arquivo anexado $mail->AltBody = 'This is a plain-text message body'; if (!$mail->send()) { echo "\r\nE-mail não pode ser enviado ".$mail->ErrorInfo; } else{ echo "\r\nBackup enviado por e-mail com sucesso"; }
Comentários
+ Enviar Comentário