php 备份mysql数据库(joomla数据库可直接使用,其他数据库稍作修改即可)_PHP教程

WBOY
풀어 주다: 2016-07-14 10:09:50
원래의
859명이 탐색했습니다.

[php] 
require_once('configuration.php'); 
$jconfig = new JConfig(); 
$connect = mysql_connect($jconfig->host ,$jconfig->user, $jconfig->password); 
$result = mysql_list_tables($jconfig->db);  
$tables = array(); 
while ($row = mysql_fetch_row($result)) { 
    $tables[] =  $row[0]; 

 
mysql_select_db($jconfig->db); 
$sql = ''; 
foreach($tables as $table){ 
    $sql .= backupTable($table); 

 
$r = file_put_contents('tmp/backup_'.date('Y-m-d-H-i-s').'.sql', $sql); 
 
if($r){ 
    die('success'); 
}else{ 
    die('lalala'); 

 
mysql_close($connect); 
 
function backupTable($table){ 
    $sqltxt = "DROP TABLE IF EXISTS $table;\n"; 
     
    $result = mysql_query("SHOW CREATE TABLE $table"); 
    $row = mysql_fetch_assoc($result); 
    $createsql = $row['Create Table']; 
    $sqltxt .= $createsql.";\n\n"; 
 
    $result = mysql_query("SELECT * FROM $table"); 
     
    $rows = array(); 
    while($row = mysql_fetch_assoc($result)){ 
        $fields = array(); 
        foreach($row as $field){ 
            $fields[] = '\''.mysql_escape_string($field).'\''; 
        } 
         
        $rows[] = '('.implode(',', $fields).')'; 
    } 
    if(!emptyempty($rows)){ 
        $sqltxt .= "INSERT INTO `$table` VALUES".implode(",\n", $rows).";\n"; 
    } 
     
     
    $sqltxt .= "\n"; 
 
    return $sqltxt; 

require_once('configuration.php');
$jconfig = new JConfig();
$connect = mysql_connect($jconfig->host ,$jconfig->user, $jconfig->password);
$result = mysql_list_tables($jconfig->db);
$tables = array();
while ($row = mysql_fetch_row($result)) {
 $tables[] =  $row[0];
}

mysql_select_db($jconfig->db);
$sql = '';
foreach($tables as $table){
 $sql .= backupTable($table);
}

$r = file_put_contents('tmp/backup_'.date('Y-m-d-H-i-s').'.sql', $sql);

if($r){
 die('success');
}else{
 die('lalala');
}

mysql_close($connect);

function backupTable($table){
 $sqltxt = "DROP TABLE IF EXISTS $table;\n";
 
 $result = mysql_query("SHOW CREATE TABLE $table");
 $row = mysql_fetch_assoc($result);
 $createsql = $row['Create Table'];
 $sqltxt .= $createsql.";\n\n";

 $result = mysql_query("SELECT * FROM $table");
 
 $rows = array();
 while($row = mysql_fetch_assoc($result)){
  $fields = array();
  foreach($row as $field){
   $fields[] = '\''.mysql_escape_string($field).'\'';
  }
  
  $rows[] = '('.implode(',', $fields).')';
 }
 if(!empty($rows)){
  $sqltxt .= "INSERT INTO `$table` VALUES".implode(",\n", $rows).";\n";
 }
 
 
 $sqltxt .= "\n";

 return $sqltxt;
}

 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/477589.htmlTechArticle[php] ?php require_once(configuration.php); $jconfig = new JConfig(); $connect = mysql_connect($jconfig-host ,$jconfig-user, $jconfig-password); $result = mysql_list_tables($jconfi...
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿