<?php
###################################
## Script de backup do banco de  ##
## Dados com envio para e-mail   ##
## Autor: Douglas Noronha        ##
## Data da Criação: 27/06/2014   ##
###################################
$server = "localhost";
$username = "root";
$password = "123456";
$db = "namedb";
$nameBK = "namedb-".date('Y-m-d-H-i-s');
echo "\r\nCriando backup do Banco de dados!";
$command = "mysqldump -h $server -u$username -p$password $db > ".$nameBK.".sql";
shell_exec($command);
echo "\r\nCompactando arquivo\r\n";

//Conforme seu Sistema Operacional e programa de compactação de arquivos
$compact = '"c:\Program Files\7-Zip\7z.exe" a '.$nameBK.'.7z '.$nameBK.'.sql';
shell_exec($compact);


echo "\r\nExcluíndo arquivos antigos";
shell_exec("del ".$nameBK.".sql");
echo "\r\nBackup realizado com sucesso!";

echo "\r\nEnviando backup para e-mail!";
require 'phpmailer/PHPMailerAutoload.php';

$mail = new PHPMailer();
$mail->isSMTP();
//$mail->SMTPDebug = 2;
//$mail->Debugoutput = 'html';
$mail->Host = 'smtp.server.com.br';
$mail->Port = 25;
$mail->SMTPSecure = 'tls';
$mail->SMTPAuth = true;
$mail->Username = "user@server.com.br";
$mail->Password = "123456";
$mail->setFrom("user@server.com.br");
$mail->Subject = 'Backup do banco de dados';
$mail->addAddress('user@server.com.br', 'Usuário');
$mail->msgHTML("Recenbendo backup do banco de dados");
$mail->AddAttachment($nameBK.".7z");
$mail->AltBody = 'This is a plain-text message body';
if (!$mail->send()) {
	echo "E-mail não pode ser enviado ".$mail->ErrorInfo;
}
else{
	echo "Backup enviado por e-mail com sucesso";
}
?>