วันนี้ผมจะมานำเสนอ การ Backup database โดยใช้ php น่ะคับ
เป็นการ backup ข้อมูลผ่าน สริปต์ โดยใช้ ตัว crontab ใน Linux เป็นตัวเรียก สริปต์นี้
ใ้ห้ทำงานน่ะคับ วันนี้จะนำเสนอ ในเรื่องของ สริปต์กันก่อนน่ะคัีบ
ผมได้ เรียนรู้บางคำสั่ง จาก อาจารย์ เปิ้ล แอบ เซิฟ และ การโค้ดดิ้ง แนะแนวโดยพี่แม๊กมอไซค์คับ
โดยการ backup ในครั้งนี้ เมื่อทำการแบ๊กอัพ เสร็จแล้ว มันจะส่งเมล์ไปบอก ยัง ผู้ดูแลระบบ
ในครั้งต่อไปผมจะ นำ คำสั่ง พร้อมกับ ภาพ มาประกอบให้ดูกันน่ะคับ
ขอบคุณทุกท่าน ที่ดูแล้ว จะนำไปให้ให้เกิดประโยชน์ต่อไป
ขอบคุณทุกท่าน ที่เอาไปใช้แล้วให้เครดิตผม
สังคมน่าอยู่เพราะว่ามีคนมีน้ำใจ
sp thx[1]: NECTEC
sp thx[2]: Thai Admin
<?
class BackUp{
function WhatBackup($whatBackup){
if ( (!$whatBackup) || ($whatBackup == "") ) {
die("Specify folder to backup");
}
$this->whatBackup = $whatBackup;
}
### Make dir if not exists ###
function WhereBackup($whereBackup){
$this->whereBackup = $whereBackup;
}
### Build FileName ###
function FileName($fileName){
$today = date("Y_m_d_H-i");
$fileName = ( (!$fileName) || ($fileName == "") ) ? $today : $fileName;
$this->fileName = $fileName;
}
### Do It ###
function Backup(){
$today = date("d-m-Y, H:i:s");
$comm = "tar cfvz ".$this->whereBackup."/phpbb_".$this->fileName.".tar.gz ".$this->whatBackup;
### If u want All output, use passthru() function ###
### Send E-mail ###
$run = exec($comm);
$msg = ($run != "") ? "Backup OK" : "Backup FAILED";
$to ="webxxx@mail.com";
$subject = "Backup system Database ip xxx [phpbb]";
$message = "Backup System Report Server : ip xxx <br />";
$message .="Date : ".$today ."<br />";
$message .="Status : ".$msg."<br />";
$message .="What Backup : ".$this->whatBackup."<br />";
$message .="Where Backup : ".$this->whereBackup."<br />";
$message .="File name : phpbb_".$this->fileName.".tar.gz";
$headers = "MIME-Version: 1.0" . "rn";
$headers .= "Content-type: text/html; charset=utf-8" . "rn";
$headers .= "From: email@mail.com" . "rn";
$headers .= "X-Mailer: PHP/".phpversion();
@mail($to, $subject, $message, $headers);
exec("sleep 30");
}
}
?>
Comments