您好,欢迎访问一九零五行业门户网

如何用PHP的页面备份、恢复Mysql数据库中的数据表

mysql|备份|恢复|数据|数据库|页面
//备份数据  
    $i   =   0;  
    $crlf=\r\n;  
    $dbname=xgtqr;  
    global     $dbconn;  
    $dbconn   =   mysql_connect(localhost,root,root);  
    $db   =   mysql_select_db(xgtqr,$dbconn);  
    $tables   =   mysql_list_tables(xgtqr,$dbconn);  
    $num_tables   =   @mysql_numrows($tables);  
          while($i             {    
                  $table   =   mysql_tablename($tables,   $i);
print   $crlf;  
                  print   $crlf;
echo   get_table_def($dbname,   $table,   $crlf).;$crlf$crlf;  
                  echo   get_table_content($dbname,   $table,   $crlf);  
                  $i++;  
          }
//定义抽取表结构与数据
function   get_table_def($db,   $table,   $crlf)  
  {  
          global   $drop;
$schema_create   =   ;  
          if(!empty($drop))  
                  $schema_create   .=   drop   table   if   exists   $table;$crlf;
$schema_create   .=   create   table   $table   ($crlf;  
          $result   =   mysql_db_query($db,   show   fields   from   $table);  
          while($row   =   mysql_fetch_array($result))  
          {  
                  $schema_create   .=         $row[field]   $row[type];
if(isset($row[default])   &&   (!empty($row[default])   ||   $row[default]   ==   0))  
                          $schema_create   .=     default   '$row[default]';  
                  if($row[null]   !=   yes)  
                          $schema_create   .=     not   null;  
                  if($row[extra]   !=   )  
                          $schema_create   .=     $row[extra];  
                  $schema_create   .=   ,$crlf;  
          }  
          $schema_create   =   ereg_replace(,.$crlf.$,   ,   $schema_create);  
          $result   =   mysql_db_query($db,   show   keys   from   $table);  
          while($row   =   mysql_fetch_array($result))  
          {  
                  $kname=$row['key_name'];  
                  if(($kname   !=   primary)   &&   ($row['non_unique']   ==   0))  
                          $kname=unique|$kname;  
                    if(!isset($index[$kname]))  
                            $index[$kname]   =   array();  
                    $index[$kname][]   =   $row['column_name'];  
          }
while(list($x,   $columns)   =   @each($index))  
          {  
                    $schema_create   .=   ,$crlf;  
                    if($x   ==   primary)  
                            $schema_create   .=         primary   key   (   .   implode($columns,   ,   )   .   );  
                    elseif   (substr($x,0,6)   ==   unique)  
                          $schema_create   .=         unique   .substr($x,7).   (   .   implode($columns,   ,   )   .   );  
                    else  
                          $schema_create   .=         key   $x   (   .   implode($columns,   ,   )   .   );  
          }
$schema_create   .=   $crlf);  
          return   (stripslashes($schema_create));  
  }
//保存数据表的值  
  function   get_table_content($db,   $table,   $crlf)  
  {  
          $schema_create   =   ;  
          $temp   =   ;  
          $result   =   mysql_db_query($db,   select   *   from   $table);  
          $i   =   0;  
          while($row   =   mysql_fetch_row($result))  
          {  
                  $schema_insert   =   insert   into   $table   values   (;  
                  for($j=0;   $j                  {  
                          if(!isset($row[$j]))  
                                  $schema_insert   .=     null,;  
                          elseif($row[$j]   !=   )  
                                  $schema_insert   .=     '.addslashes($row[$j]).',;  
                          else  
                                  $schema_insert   .=     '',;  
                  }  
                  $schema_insert   =   ereg_replace(,$,   ,   $schema_insert);  
                  $schema_insert   .=   );$crlf;  
                  $temp   =   $temp.$schema_insert   ;  
                  $i++;  
          }  
          return   $temp;  
  }  
  ?>  
联系qq:31443433
其它类似信息

推荐信息