php 数据库的导出,备份
数据库的导出,备份 [代码片段(54行)]
/*
数据库的导出
*/
set_time_limit(0);//限制最大执行时间
$DBNAME = 'bwshop';
$dir = 'G:/web/apache/htdocs/shixunone/input/';//文件的地址
//连接数据库
mysql_connect('127.0.0.1','root','root') or die("数据库链接失败,错误:" . mysql_error());
//连接表
mysql_select_db($DBNAME) or die("表链接失败,错误:" . mysql_error());
$result = mysql_query("show tables");
if(!is_dir($dir)){
die('文件夹不存在');
}
$fileName=$dir.$DBNAME.".sql";
//判断给定的文件名是否可写
if (is_writable($dir)) {
//检查文件或目录是否存在
if(file_exists($fileName)){
//删除文件
unlink($fileName);
}
$querySql = '';
//循环数据库内容
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
$querySql .= "DROP TABLE IF EXISTS `".$row[0]."`;\\n";
$show = mysql_query('show create table '.$row[0]);
$create = mysql_fetch_row($show);//从结果集中取得一行作为枚举数组
$querySql .= $create[1].";\\n\\n";
$sql = mysql_query('select * from '.$row[0]);
while($val = mysql_fetch_array($sql)){
$querySql .= 'insert into `'.$row[0].'` values(';
$listval = mysql_num_fields($sql);//取得结果集中字段的数目
$vallist = '';
for($i=0; $i<$listval; $i++){
$vallist .= "'".mysql_escape_string($val[$i])."',";
}
$querySql .= rtrim($vallist,',');
$querySql .= ");\\n";
}
}
//print_r($querySql);die;
$fp=fopen($fileName,"w");//得到指针
fwrite($fp,$querySql);//写
fclose($fp);//关闭
echo "任务完成";
}else{
echo '文件夹 '.$dir.' 不可写';
}
//释放结果内存
mysql_free_result($result);
//关闭数据库
mysql_close();
//该片段来自于http://outofmemory.cn
精彩图集
精彩文章






