Ämne: Auto backup.
Visa ett inlägg
Oläst 2011-04-26, 22:35 #3
Anders Karlsson Anders Karlsson är inte uppkopplad
Flitig postare
 
Reg.datum: Dec 2003
Inlägg: 422
Anders Karlsson Anders Karlsson är inte uppkopplad
Flitig postare
 
Reg.datum: Dec 2003
Inlägg: 422
Hej!

Jag rekommenderar att du inte kodar direkt på webhotellet utan kanske att du kör med svn som sedan ftpar över php-filerna till hotellet när du kört och testat dem på test server(kan vara samma som hotellet). Men mysql måste ju backuppas från hotellet. Här är ett litet script. Det använder pear för själva mailandet...


include('Mail.php');
include('Mail/mime.php');

function akc_backup($dbhost ,
$dbuser ,
$dbpass ,
$dbname ,
$sendto = "You <[email protected]>",
$sendfrom = "Automated Backup <[email protected]>",
$sendsubject = "Daily Mysql Backup",
$bodyofemail = "Here is the daily backup.")
{
$backupfile = $dbname . date("Y-m-d") . '.sql';
$backupzip = $backupfile . '.tar.gz';
system("mysqldump -h $dbhost -u $dbuser -p$dbpass $dbname > $backupfile");
system("tar -czvf $backupzip $backupfile");

// Mail the file
$message = new Mail_mime();
$text = "$bodyofemail";
$message->setTXTBody($text);
$message->AddAttachment($backupzip);
$body = $message->get();
$extraheaders = array("From"=>"$sendfrom", "Subject"=>"$sendsubject");
$headers = $message->headers($extraheaders);
$mail = Mail::factory("mail");
$mail->send("$sendto", $headers, $body);

// Delete the file from your server
unlink($backupfile);
unlink($backupzip);
}
Anders Karlsson är inte uppkopplad   Svara med citatSvara med citat