WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Auto backup. (https://www.wn.se/forum/showthread.php?t=1047874)

ehsanpo 2011-04-26 15:52

Auto backup.
 
Hej! första inlägget här!
jag undrar om ni känner till nån bra script som kan ta backup av hemsida och database och sen skicka den till ett mail konto?

Danski 2011-04-26 16:58

Till mail? Är du säker på detta?
En normalstor sida + databas är många gånger större än vad ett mailkonto kan hantera, för att inte snacka om hur extremt långsama mailservrar är.

Är det en engångsgrej så använd rsync för filer och mysqldump för databas.

Anders Karlsson 2011-04-26 22:35

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);
}

ehsanpo 2011-04-27 13:01

alltså grejen är att jag vill ha backup på mina filer som är på min server en gång i månaden och sidan e inte så stor alltså vi snackar om en startsida med kanske 20 undersidor.
den ända sättet som jag kunde tänka mig va det att skicka de till ett mail konto...men de e kanske inte det bästa man kan göra...

och det e inte bara en sida! kanske 3/4 sidor som ska skickas till olika mail hade jag tänkt mig, finns det nåt bättre jag kan göra?

captaindoe 2011-04-27 13:29

Om du har tillgång till ett FTP konto någon annanstans skulle jag föreslå att du använder php's inbyggda ftp funktioner för att skicka över dina backups dit.


Alla tider är GMT +2. Klockan är nu 18:47.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson