抛砖引玉:简单的备份数据库
时间:2008-10-15
来源:互联网
备份数据库有什么好处呢?第一我们可以根据备份出来的文件制作安装程序,第二当然是备份咯,看了别人写的类,虽然很实用,但是终究不是自己的思想,所以在参考别人的基础上,写出自己的方法,期望达到抛砖引玉的效果:
[php]
<?php
include_once("config.php");
$conn=mysql_connect(HOST,USER,PWD);
mysql_select_db(DB);
mysql_query("set names gb2312");//注意编码
//显示所有的表:
$res=mysql_list_tables(DB);
while ($row = mysql_fetch_row($res))
{
$table[]=$row[0];//得到数据库中所有的表
}
foreach ($table as $v)
{
//导出表的结构
$sql.="DROP TABLE IF EXISTS `$v`;\n";
$create=mysql_query("show create table $v");
$rs=mysql_fetch_row($create);
$sql.=$rs[1].";\n\n";
}
//导出所有数据
foreach ($table as $v)
{
$res=mysql_query("select * from $v");
$fild=mysql_num_fields($res);//获取表的列数
while ($rs=mysql_fetch_array($res))
{
$comma="";//设置逗号,自己想吧,为什么如此设置
$sql.="insert into $v values(";
for($i=0;$i<$fild;$i++)
{
$sql.=$comma."'".mysql_escape_string($rs[$i])."'";//mysql_escape_string转义一些特殊字符
$comma = ",";
}
$sql.=");\n";
}
$sql.="\n";
}
echo $sql;
?>
[/php]
这样下来,一个数据库中所有的表和数据全部备份了,剩下的只要将最后的结果输出到文件即可
看了许多别人的程序之后,原来发现自己也可以写出好的代码。
[php]
<?php
include_once("config.php");
$conn=mysql_connect(HOST,USER,PWD);
mysql_select_db(DB);
mysql_query("set names gb2312");//注意编码
//显示所有的表:
$res=mysql_list_tables(DB);
while ($row = mysql_fetch_row($res))
{
$table[]=$row[0];//得到数据库中所有的表
}
foreach ($table as $v)
{
//导出表的结构
$sql.="DROP TABLE IF EXISTS `$v`;\n";
$create=mysql_query("show create table $v");
$rs=mysql_fetch_row($create);
$sql.=$rs[1].";\n\n";
}
//导出所有数据
foreach ($table as $v)
{
$res=mysql_query("select * from $v");
$fild=mysql_num_fields($res);//获取表的列数
while ($rs=mysql_fetch_array($res))
{
$comma="";//设置逗号,自己想吧,为什么如此设置
$sql.="insert into $v values(";
for($i=0;$i<$fild;$i++)
{
$sql.=$comma."'".mysql_escape_string($rs[$i])."'";//mysql_escape_string转义一些特殊字符
$comma = ",";
}
$sql.=");\n";
}
$sql.="\n";
}
echo $sql;
?>
[/php]
这样下来,一个数据库中所有的表和数据全部备份了,剩下的只要将最后的结果输出到文件即可
看了许多别人的程序之后,原来发现自己也可以写出好的代码。
作者: dongxin1390008 发布时间: 2008-10-15
不错,不错
作者: langwang0070 发布时间: 2008-10-15
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28