>백엔드 개발 >PHP 튜토리얼 >MYSQL 백업을 구현하기 위해 PHP로 작성된 클래스 라이브러리

MYSQL 백업을 구현하기 위해 PHP로 작성된 클래스 라이브러리

WBOY
WBOY원래의
2016-08-08 09:33:191116검색

데이터베이스를 백업하는 방법을 연구하고 MYSQL 백업을 구현하는 PHP 클래스 라이브러리를 공유하고 싶습니다.

<?php
/******   备份数据库结构 ******/
/****正好要研究如何备份数据库,分享一个php实现MYSQL备份的类库********/
      /*
      函数名称:table2sql()
      函数功能:把表的结构转换成为SQL
      函数参数:$table: 要进行提取的表名
      返 回 值:返回提取后的结果,SQL集合
      函数作者:heiyeluren
      */
   
     function table2sql($table)
      {
          global $db;
         $tabledump = "DROP TABLE IF EXISTS $table;\n";
         $createtable = $db->query("SHOW CREATE TABLE $table");
         $create = $db->fetch_row($createtable);
         $tabledump .= $create[1].";\n\n";
          return $tabledump;
      }
   
   
     /****** 备份数据库结构和所有数据 ******/
      /*
      函数名称:data2sql()
      函数功能:把表的结构和数据转换成为SQL
      函数参数:$table: 要进行提取的表名
      返 回 值:返回提取后的结果,SQL集合
      函数作者:heiyeluren
      */
     function data2sql($table)
      {
          global $db;
         $tabledump = "DROP TABLE IF EXISTS $table;\n";
         $createtable = $db->query("SHOW CREATE TABLE $table");
         $create = $db->fetch_row($createtable);
         $tabledump .= $create[1].";\n\n";
   
         $rows = $db->query("SELECT * FROM $table");
         $numfields = $db->num_fields($rows);
         $numrows = $db->num_rows($rows);
          while ($row = $db->fetch_row($rows))
          {
             $comma = "";
             $tabledump .= "INSERT INTO $table VALUES(";
              for($i = 0; $i < $numfields; $i++)
              {
                 $tabledump .= $comma."'".mysql_escape_string($row[$i])."'";
                 $comma = ",";
              }
             $tabledump .= ");\n";
          }
         $tabledump .= "\n";
   
          return $tabledump;
      }
?>

위 내용은 MYSQL 백업을 구현하기 위해 PHP로 작성된 클래스 라이브러리를 소개하고 있으며, 관련 내용도 포함되어 있어 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.