Laburo España: 250.000 ofertas de empleo

Sputnik

Backups con PHP

PHP
Viernes, 14 de enero de 2005

Me acabo de hacer un pequeñito script PHP para hacer backups contra las bases de datos de KDE-Hispano. Solo hace backup de las BBDD y nos la envia por email, de momento.


En primer lugar, necesitamos la libreria PHPMailer, que la podemos encontrar en: http://phpmailer.sourceforge.net/

El script de backup comentadito :-):

// Asignamos una memoria de 12MB para poder hacer las transacciones. Reasignar segun necesidad
ini_set("memory_limit","12M");
// Fecha de hoy
$hoy = date("d-m-Y");
// Nombre del archivo
$archivo = trim($_GET['file']);
// Temporal
$tmp = "/var/tmp/"
// Fichero adjunto al email (Cambiar la ruta segun necesidad)
$adjunto = $tmp.$archivo.".sql.bz2";
// Destinatario del email
$to = trim($_GET['to']);

// Hacemos varios chequeos, primero borramos los ficheros anteriores
exec("rm /var/tmp/".$archivo.".sql");
// Comando para exportar las BBDD, cambiar usuario y contraseña a las vuestras
exec("mysqldump -u usuario -pcontraseña ".$archivo." > $tmp.$archivo.".sql");
// Comprimimos el archivo sql
exec("bzip2 -zf $tmp.$archivo.".sql");

// Comprobamos si existe el archivo comprimido y mandamos el email
if (is_file($tmp.$archivo.".sql.bz2")) {
// Creamos una instancia de PHPMailer
$mail = new PHPMailer();
// Definimos el remitente
$mail->From = "yo@midominio.org";
// Nombre del remitente
$mail->FromName = "Yo";
// Usamos localhost como SMTP
$mail->Host = "localhost";
// Asunto del email
$mail->Subject = "Backup (".$archivo."): " .$hoy;
// Cuerpo del mensaje
$mail->Body ="Adjunto fichero de backup para base de datos: ".$archivo."\n\nFecha: ".date("d-m-Y h:i");
// Añadimos el destinatario
$mail->AddAddress($to);
// Añadimos el adjunto
$mail->AddAttachment($adjunto);
// Enviamos el email
if(!$mail->Send()) echo "Error enviando el email";

// Sanemos por si acaso y limpiamos direcciones y adjuntos
$mail->ClearAddresses();
$mail->ClearAttachments();
}


Un saludo,


Comentarios

Comentar


Recordar datos

Miniblog

Favoritos

Tira e.c.o.l.*

Tira e.c.o.l.*

sputnik 2004-2005
Algunos derechos reservados.


Suscribir este blog en Bloglines

Blogarama

No a las patentes de software

LaInformacion.com lainformacion.com - Medio Oficial de los Premios Bitacoras 2009