用PHP实现XML备份Mysql数据库 |
作者:匿名 发布时间:2003-08-15 来源:http://www.webrj.com
|
以下是在Linux下通过Apache+PHP对Mysql数据库的备份的文件代码:
文件一、Listtable.php (文件列出数据库中的所有表格,供选择备份)
<html> <head> <title> 使用XML备份Mysql数据库</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"> </head> <body bgcolor="#FFFFFF" text="#000000"> 请选择要备份的表格: <? $con=mysql_connect('localhost','root','xswlily'); $lists=mysql_list_tables("embed",$con); //数据库连接代码 $i=0; while($i<mysql_num_rows($lists)){ $tb_name=mysql_tablename($lists,$i); echo "<a href=backup.php?table=".$tb_name.">".$tb_name."</a> "; //列出所有的表格 $i++;}
?> </body> </html>
文件二、Backup.php
<?if ($table=="") header("Location:listtable.php");?><html> <head> <title> 使用XML备份Mysql数据库</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"> </head> <body bgcolor="#FFFFFF" text="#000000"> <? $con=mysql_connect('localhost','root','xswlily'); $query="select * from $table "; //数据库查询 $result=mysql_db_query("embed",$query,$con); $filestr="<"."?xml version="1.0" encoding="GB2312"?".">"; $filestr.="<".$table."s>"; while ($row=mysql_fetch_array($result)) //列出所有的记录 {$filestr.="<".$table.">"; $fields=mysql_list_fields("embed",$table,$con); $j=0; //$num_fields=mysql_field_name($fields,$j); //echo $num_fields; while ($j<mysql_num_fields($fields)){ $num_fields=mysql_field_name($fields,$j); $filestr.="<".$num_fields.">"; $filestr.=$row[$j]; $filestr.="</".$num_fields.">"; $j++;} $filestr.="</".$table.">"; } $filestr.="</".$table."s>"; echo $filestr; //以下是文件操作代码 $filename=$table.".xml"; $fp=fopen("$filename","w"); fwrite($fp,$filestr); fclose($fp); Echo "数据表".$table."已经备份成功!";?> </body> </html>
通过以上文件的操作就可以实现对数据库中选定的表格进行备份.
以上主要介绍了通过PHP实现XML备份数据库的操作方法,其实并不复杂,通过XML,我们可以备份各种各样的数据库,当然也可以通过相关的方法将备份的XML文档恢复到数据库中,这里就不详细描述了。
|
|
|
|
|