gpt4 book ai didi

备份mysql数据库的php代码(一个表一个文件)

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 29 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章备份mysql数据库的php代码(一个表一个文件)由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

代码如下

<?php  $cfg_dbhost ='localhost';//mysql主机  $cfg_dbname ='sq_test';//数据库名  $cfg_dbuser ='root';//数据库用户名  $cfg_dbpwd ='jb51.net';//数据库用户密码  $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(!$dirpath) return 0;  $dirpath=str_replace("\\","/",$dirpath); $mdir="";  foreach(explode("/",$dirpath) as $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 );  if( rmdir( $dirName ) )echo "成功删除目录: $dirName<br/>\n";  }  }  function filein($filename="databak/",$table='',$mysql=''){  $fp = fopen($filename.'/'.$table.'.sql','w');  fputs($fp,$mysql);  fclose($fp);  }  header("Content-Type:text/html;charset=utf-8");  $db=new dbmysql();  $table=$db->getTablesName();  $filename="databak/".date("Ymd");  $url=getcwd()."/databak/";  $handle = opendir($url);  while(false!==($file = readdir($handle))){  if ($file!="."&&$file!=".."&&is_dir($url."/".$file)) {  if(date("Ymd")-$file>5){delDirAndFile($url."/".$file);};  }  }  makedir($filename);  foreach($table as $t){  $s1=$db->fetch_array("show create table `$t`");  $mysql="/*Time:".date("Y-m-d H:i:s")." */\r\nDROP TABLE IF EXISTS `$t`;\r\n".$s1['Create Table'].";\r\n\r\n";  $a1=$db->fetch_assoc("select * from `$t`");  foreach ($a1 as $data){  $vals=array_values($data);  $vals=array_map('addslashes',$vals);  $vals=join("','",$vals);  $vals="'".$vals."'";  $mysql.="INSERT INTO `$t` VALUES ($vals);\r\n";  }  $mysql.="\r\n";  filein($filename,$t,$mysql);  }  echo "数据备份成功,生成备份文件   ".getcwd()."/".$filename."/<br/>程序自动清理5天以前的备份";  ?>  。

最后此篇关于备份mysql数据库的php代码(一个表一个文件)的文章就讲到这里了,如果你想了解更多关于备份mysql数据库的php代码(一个表一个文件)的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com