用PHP备份mysql(1)

<?php

$cfg_dbhost            =’localhost’; //mysql主机
$cfg_dbname            =’sq_test’;//数据库名
$cfg_dbuser            =’root’; //数据库用户名
$cfg_dbpwd            =’123450′;//数据库用户密码
$cfg_db_language    =’utf8′; //数据库编码

class dbmysql{
public static $dbhost = localhost;
public static $dbname;
public static $dbuser = root;
public static $dbpass;
public static $charset = utf8;
public static $DB = null;
public $querycount = 0;

public function __construct()
{
self
::$dbhost = $GLOBALS[cfg_dbhost];
self
::$dbname = $GLOBALS[cfg_dbname];
self
::$dbuser = $GLOBALS[cfg_dbuser];
self
::$dbpass = $GLOBALS[cfg_dbpwd];
self
::$charset= $GLOBALS[cfg_db_language];
self
::connect();
}
public function connect(){
self
::$DB=mysql_connect(self::$dbhost,self::$dbuser,self::$dbpass);
if(!self::$DB){
self
::sqlError(无 法连接服务器!.self::mysqlerror);exit("无法连接服务器!");;
}
if(!mysql_select_db(self::$dbname)){
self
::sqlError(无 法连接数据库(.self::$dbname.)!.self::mysqlerror);exit("无法连接数据库!");
}
mysql_query("SET NAMES ’".self::$charset."‘, character_set_client=binary, sql_mode=”;",self::$DB);
}

private function mysqlerror(){
return mysql_error();
}

public function getTablesName(){
$res = mysql_query(SHOW TABLES FROM .self::$dbname,self::$DB);
$tables=array();
while ($row=mysql_fetch_row($res))$tables[]=$row[0];
mysql_free_result($res);
return $tables;
}
public function getFields($table){
$res=mysql_query(DESCRIBE .$table,self::$DB);
$tables=array();
while($row=mysql_fetch_row($res))$tables[]=$row[0];
mysql_free_result($res);
return $tables;
}

public function fetch_array($sql){
$res=mysql_query($sql,self::$DB);
$r=mysql_fetch_array($res);
mysql_free_result($res);
return $r;
}

public function fetch_assoc($sql){
$q3=mysql_query($sql,self::$DB);    $ra=array();
while($data=mysql_fetch_assoc($q3)){
$ra[]=$data;
}
mysql_free_result($q3);
return $ra;
}
private function sqlError($message=,$info =,$sql=){//保存错误信息到文件
        echo "{".$message."<br/>DATE: ".date(Y-n-j H:i:s)."<br/>ERROR: ".$info."<br/>SQL: ".$sql."<br/>}<br/>";
}
public function close(){
self
::$DB =null;
}
public function __destruct()
{
self
::close();
}
}

/*—class end*/

function makedir($dirpath){
if(!$dirpathreturn 0;
$dirpath=str_replace("","/",$dirpath);    $mdir="";
foreach(explode("/",$dirpathas $val){
$mdir.=$val."/";
if($val==".."||$val==".")continue;
if(!is_dir($mdir)&&!file_exists($mdir)){
if(!@mkdir($mdir,0755)){
exit("创建目录 [".$mdir."]失败.");
}
}
}
return true;
}

function delDirAndFile($dirName){
if($handle=opendir($dirName)){
while(false!==($item = readdir($handle))){
if($item !="."&&$item!=".."){
if(is_dir"$dirName/$item")){
delDirAndFile( 
"$dirName/$item");
}
else{   unlink("$dirName/$item");   }
}
}
closedir$handle );
ifrmdir$dirName ) )echo "成 功删除目录: $dirName<br/>n";
}
}

function filein($filename="databak/",$table=,$mysql=){
$fp = fopen($filename./.$table..sql,w);
fputs($fp,$mysql);
fclose($fp);
}

}

发布日期:
分类:Mysql

发表评论

邮箱地址不会被公开。 必填项已用*标注