最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php將mysql數(shù)據(jù)庫整庫導(dǎo)出生成sql文件的具體實現(xiàn)

 更新時間:2014年01月08日 16:06:09   作者:  
下面是php將mysql數(shù)據(jù)庫整庫導(dǎo)出生成sql文件的詳細代碼,希望對大家在用php編程時備份數(shù)據(jù)有一定幫助
由網(wǎng)上搜到,有更改。

文件名:db_backup.php

源代碼如下:
復(fù)制代碼 代碼如下:

<?php
ini_set("max_execution_time", "180");//避免數(shù)據(jù)量過大,導(dǎo)出不全的情況出現(xiàn)。

/*

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

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

$host="";//數(shù)據(jù)庫地址

$dbname="";//這里配置數(shù)據(jù)庫名

$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");

//備份數(shù)據(jù)
$i = 0;
$crlf="\r\n";
global $dbconn;
$dbconn = mysql_connect($host,$username,$passw]);//數(shù)據(jù)庫主機,用戶名,密碼
$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++;
}

/*新增的獲得詳細表結(jié)構(gòu)*/
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;
}

/*
//原來別人的取得數(shù)據(jù)庫結(jié)構(gòu),但不完整
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));
}
*/

//獲得表內(nèi)容
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;
}
?>

相關(guān)文章

  • php 實現(xiàn)進制相互轉(zhuǎn)換

    php 實現(xiàn)進制相互轉(zhuǎn)換

    最近的項目中需要用到進制轉(zhuǎn)換,這個問題在剛剛接觸計算機理論時候,還是很會的,好久不用,居然模糊了……
    2016-04-04
  • PHP校驗ISBN碼的函數(shù)代碼

    PHP校驗ISBN碼的函數(shù)代碼

    最近在編寫一個圖書管理程序的時候,需要校驗圖書ISBN碼正確性,查了一些資料,了解了圖書ISBN碼的構(gòu)成。
    2011-01-01
  • PHP實現(xiàn)上一篇下一篇的方法實例總結(jié)

    PHP實現(xiàn)上一篇下一篇的方法實例總結(jié)

    這篇文章主要介紹了PHP實現(xiàn)上一篇下一篇的方法,結(jié)合實例形式總結(jié)分析了php獲取上一篇下一篇文章SQL操作的相關(guān)查詢技巧,需要的朋友可以參考下
    2016-09-09
  • 學(xué)習(xí)php設(shè)計模式 php實現(xiàn)觀察者模式(Observer)

    學(xué)習(xí)php設(shè)計模式 php實現(xiàn)觀察者模式(Observer)

    這篇文章主要介紹了php設(shè)計模式中的觀察者模式,使用php實現(xiàn)觀察者模式,感興趣的小伙伴們可以參考一下
    2015-12-12
  • redis查看連接數(shù)及php模擬并發(fā)創(chuàng)建redis連接的方法

    redis查看連接數(shù)及php模擬并發(fā)創(chuàng)建redis連接的方法

    下面小編就為大家?guī)硪黄猺edis查看連接數(shù)及php模擬并發(fā)創(chuàng)建redis連接的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12
  • php 隨機記錄mysql rand()造成CPU 100%的解決辦法

    php 隨機記錄mysql rand()造成CPU 100%的解決辦法

    mysql數(shù)據(jù)庫有10幾萬條數(shù)據(jù),使用rand()提取隨機10條記錄,導(dǎo)致服務(wù)器cpu占用居高不下直至死機~
    2010-05-05
  • PHP使用feof()函數(shù)讀文件的方法

    PHP使用feof()函數(shù)讀文件的方法

    這篇文章主要介紹了PHP使用feof()函數(shù)讀文件的方法,以實例形式對比了正確與錯誤的用法,闡明了feof()函數(shù)的使用技巧,需要的朋友可以參考下
    2014-11-11
  • PHP實現(xiàn)返回JSON和XML的類分享

    PHP實現(xiàn)返回JSON和XML的類分享

    這篇文章主要給大家分享了一個使用PHP實現(xiàn)返回JSON和XML的類,非常實用,希望大家能夠喜歡
    2015-01-01
  • PHP程序員編程注意事項

    PHP程序員編程注意事項

    PHP程序員最易犯10種錯誤所以下面的好多都是我們需要注意的地方PHP是個偉大的web開發(fā)語言,靈活的語言,但是看到php程序員周而復(fù)始的犯的一些錯誤。我做了下面這個列表,列出了PHP程序員經(jīng)常犯的10中錯誤,大多數(shù)和安全相關(guān)。看看你犯了幾種
    2008-04-04
  • PHP生成和獲取XML格式數(shù)據(jù)的方法

    PHP生成和獲取XML格式數(shù)據(jù)的方法

    這篇文章主要介紹了PHP生成和獲取XML格式數(shù)據(jù)的方法,結(jié)合實例形式較為詳細的分析了PHP操作數(shù)據(jù)庫生成XML及獲取XML格式數(shù)據(jù)的相關(guān)技巧,需要的朋友可以參考下
    2016-03-03

最新評論

开封县| 大同市| 湟源县| 德州市| 江阴市| 安塞县| 榆林市| 临夏县| 安宁市| 澄迈县| 龙口市| 福州市| 巩义市| 宜黄县| 龙口市| 穆棱市| 吴桥县| 辛集市| 志丹县| 句容市| 湘潭市| 石河子市| 阳泉市| 高州市| 安顺市| 上饶县| 紫金县| 苍梧县| 紫阳县| 双流县| 额济纳旗| 成安县| 广昌县| 许昌市| 扶风县| 长武县| 青川县| 彭泽县| 岱山县| 青冈县| 资源县|