文件名:db_backup.php

源代碼如下: 復制代碼 代碼如下: <?php ini_set("max_execution_time", "180");//避免數據量過大,導出不全的情況出現。

/*

程序功能:mysql數據庫備份功能 作者:唐小剛 " /> 青柠在线观看免费全集,纯肉高H放荡受BL文库,av网站视频在线观看

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

php將mysql數據庫整庫導出生成sql文件的具體實現

由網上搜到,有更改。

文件名:db_backup.php

源代碼如下:
復制代碼 代碼如下:
<?php
ini_set("max_execution_time", "180");//避免數據量過大,導出不全的情況出現。

/*

程序功能:mysql數據庫備份功能
作者:唐小剛
說明:
本程序主要是從mysqladmin中提取出來,并作出一定的調整,希望對大家在用php編程時備份數據有一定幫助.
如果不要備份結構:請屏掉這句:echo get_table_structure($dbname, $table, $crlf).";$crlf$crlf";
如果不要備份內容:請屏掉這句:echo get_table_content($dbname, $table, $crlf);

修改者:何錦盛
修改時間:2009/11/7
修改內容:新增函數get_table_structure,注釋掉了函數get_table_def,目的是獲得更豐富的建表時的細節(如:ENGINE=InnoDB AUTO_INCREMENT=80 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='商品信息變更信息')
*/

$host="";//數據庫地址

$dbname="";//這里配置數據庫名

$username="";//用戶名

$passw="";//這里配置密碼

$filename=date("Y-m-d_H-i-s")."-".$dbname.".sql";
header("Content-disposition:filename=".$filename);//所保存的文件名
header("Content-type:application/octetstream");
header("Pragma:no-cache");
header("Expires:0");

//備份數據
$i = 0;
$crlf="/r/n";
global $dbconn;
$dbconn = mysql_connect($host,$username,$passw]);//數據庫主機,用戶名,密碼
$db = mysql_select_db($dbname,$dbconn);
mysql_query("SET NAMES 'utf8'");
$tables =mysql_list_tables($dbname,$dbconn);
$num_tables = @mysql_numrows($tables);
print "-- filename=".$filename;
while($i < $num_tables)
{
$table=mysql_tablename($tables,$i);
print $crlf;
echo get_table_structure($dbname, $table, $crlf).";$crlf$crlf";
//echo get_table_def($dbname, $table, $crlf).";$crlf$crlf";
echo get_table_content($dbname, $table, $crlf);
$i++;
}

/*新增的獲得詳細表結構*/
function get_table_structure($db,$table,$crlf)
{
global $drop;

$schema_create = "";
if(!empty($drop)){ $schema_create .= "DROP TABLE IF EXISTS `$table`;$crlf";}
$result =mysql_db_query($db, "SHOW CREATE TABLE $table");
$row=mysql_fetch_array($result);
$schema_create .= $crlf."-- ".$row[0].$crlf;
$schema_create .= $row[1].$crlf;
Return $schema_create;
}

/*
//原來別人的取得數據庫結構,但不完整
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 full 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]";
if($row["Comment"] != "")
$schema_create .= " Comment '$row[Comment]'";
$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<mysql_num_fields($result);$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;
}
?>

php技術php將mysql數據庫整庫導出生成sql文件的具體實現,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 男男腐文污高干嗯啊快点1V1 | 久久中文字幕无码A片不卡 久久中文字幕人妻熟AV女蜜柚M | 久久秋霞理伦片 | 美女的隐私蜜桃传媒免费看 | 伊人成综合网伊人222 | 被黑人做的白浆直流 | 国产99久久久欧美黑人刘玥 | 亚洲男人的天堂久久精品麻豆 | 被黑人群jian又粗又大H | 久久青草费线频观看国产 | 一个人免费视频在线观看高清频道 | 久久免费视频 | 美女黄图大全 | 网友自拍偷拍 | 国语自产二区高清国语自产拍 | 日本无码专区亚洲麻豆 | 毛片无码免费无码播放 | 性xxxx直播放免费 | 日日夜夜噜噜 | 人人艹人人| 亚洲无线码一区在线观看 | 蝴蝶中文娱乐 | 国产超碰精久久久久久无码AV | 国产精品免费久久久久影院 | 国产成人无码区免费内射一片色欲 | 色爱区综合激情五月综合激情 | 国产精品97久久AV色婷婷综合 | 丫鬟粗大狠狠贯穿h | 131美女爱做视频午夜剧场 | 国产一卡 二卡三卡四卡无卡乱码视频 | 中国xxxxxx片免费播放 | 高清观看ZSHH96的视频素材 | 亚洲中文字幕永久在线全国 | 最近中文字幕高清中文 | 国产99青草全福视在线 | 国产又色又爽又刺激在线播放 | 和I儿媳妇激情 | 久久久久久久伊人电影 | 欧美性猛交XXXX乱大交极品 | 黄色日本女人 | 国产成人精品视频免费大全 |