[ 永远的UNIX::UNIX技术资料的宝库 ]

首页 > 编程技术 > Php > 正文
用PHP实现XML备份Mysql数据库
本文出自:http://www.webrj.com 作者: (2002-01-31 10:41:13)
以下是在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文档恢复到数据库中,这里就不详细描述了。 

(http://www.fanqiang.com)
    进入【ChinaUnix.net论坛

相关文章
HP-UX系统备份与恢复全功略 (2002-01-29 20:03:38)
双机(多机)自动互备份方案 (2002-01-19 08:30:00)
备份和修复Linux LILO指南 (2002-01-08 08:10:00)
UNIX管道功能在系统备份中的妙用 (2002-01-07 07:10:00)
Sun Solaris 用户手册 -- 九. 数据备份和传输工具 (2001-10-04 08:00:00)
中文man手册:smbtar - 直接备份SMB/CIFS共享资源到UNIX磁带设备的shell脚本 (2001-09-23 07:05:01)
用rsync对网站进行镜像备份 (2001-09-08 13:05:00)
备份Cisco路由器用户配置 (2001-08-17 15:00:01)
AIX的系统备份和恢复   (2001-08-08 08:00:00)
Linux 网管 123 --- 第8章. 备份及回存程序 -3.Cisco 路由器组态备份 (2001-07-02 20:10:00)
 

★  樊强制作 欢迎分享  ★