乙個簡單mysql的資料備份類
這些一直都在搞資料,因此資料的備份就少不了的了,如果不寫這類乙個簡單mysql的資料備份類,那將是很麻煩的。自己就下定決心,寫了乙個。
功能上有:
require_once("backdata.class.php");
$link = @mysql_connect("localhost","資料庫名","密碼") or die ('could not connect to server.');
mysql_query("use cms",$link);
mysql_query("set names utf8",$link);
$dbbck=new backupdata($link);//例項化它,只要乙個鏈結標識就行了
//備份資料時,如想備份乙個資料庫中的所有表,你可這樣寫:
$dbbck->backuptables("cms","./",array('*'));
//備份資料時,如想備份乙個資料庫中的僅乙個表時,你可這樣寫:
$dbbck->backuptables("cms","./",array('user'));
//備份資料時,如想備份乙個資料庫中的多個表時,你可這樣寫:
$dbbck->backuptables("cms","./",array('user','acl','informatoin'));
//註解:$dbbck->backuptables("參1","參2",array());中,
參1為:資料庫名,
第三個為:你要儲存那些表
ok...
以下為**:
<?php
/* *
*簡單的乙個備份資料類
*author fc
* */
class backupdata
public function backuptables($dbname,$datadir,$tablenames)
//************************以下是形成sql的前半部分**************
//如果存在表,就先刪除
$sqls .= "drop table if exists $tablename;/n";
//讀取表結構
$rs = mysql_query("show create table $tablename",$this->mysql_link);
$row=mysql_fetch_row($rs);
//獲得表結構組成sql
$sqls.=$row['1'].";/n/n";
unset($rs);
unset($row);
//************************以下是形成sql的後半部分**************
//查尋出表中的所有資料
$rs=mysql_query("select * from $tablename",$this->mysql_link);
//表的字段個數
$field=mysql_num_fields($rs);
//形成此種sql語句:"insert into `groups` values('1499e0ca25988d','主任','','0');"
while($rows=mysql_fetch_row($rs))
$sqls.=");/n/n/n";
} }
$backfilepath=$this->datadir.date("ymdhis",time()).'.sql';
//寫入檔案
$filehandle = fopen($backfilepath, "w");
fwrite($filehandle, $sqls);
fclose($filehandle); }
private function delarray($array)
$tablelist=$tablelist;
}else
} return $tablelist;
} }
乙個備份MySQL資料庫的簡單Shell指令碼
shell指令碼是我們寫不同型別命令的一種指令碼,這些命令在這乙個檔案中就可以執行。我們也可以逐一敲入命令手動執行。如果我們要使用shell指令碼就必須在一開始把這些命令寫到乙個文字檔案中,以後就可以隨意反覆執行這些命令了。我首先要在本文帶給你的是完整指令碼。後面會對該指令碼做說明。我假定你已經知道...
乙個備份MySQL資料庫的簡單Shell指令碼
shell指令碼是我們寫不同型別命令的一種指令碼,這些命令在這乙個檔案中就可以執行。我們也可以逐一敲入命令手動執行。如果我們要使用shell指令碼就必須在一開始把這些命令寫到乙個文字檔案中,以後就可以隨意反覆執行這些命令了。我首先要在本文帶給你的是完整指令碼。後面會對該指令碼做說明。我假定你已經知道...
乙個備份MySQL資料庫的簡單Shell指令碼
主指令碼 用於備份mysql資料庫 該shell指令碼可以自動備份 資料庫。只要複製貼上本指令碼到文字編輯器中,輸入資料庫使用者名稱 密碼以及資料庫名即可。我備份資料庫使用的是mysqlump 命令。後面會對每行指令碼命令進行說明。1.分別建立目錄 backup 和 oldbackup mkdir ...