您的位置:首页 > 编程语言 > PHP开发

利用php还原mysql大文件的备份

2011-08-09 17:48 302 查看
首先在原来的phpmyadmin中分两步导出mysql数据库 请分两个步骤导出

第一步:导出数据库结构。数据库结构文件一般很小,几乎不可能超过2M,所以可以直接在另外一个phpmyadmin的上面直接恢复;

第二步:导出数据内容。这个文件若是太大,则可以采用php写的程序进行恢复。

<?php

define('DB_NAME', '');

define('DB_USER', '');

define('DB_PASSWORD', '');

define('DB_HOST', '');

/*定义数据库连接*/

$mysql = mysql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die("mysql connect fail, wrong password");

mysql_select_db(DB_NAME)or die("select DB fail");

mysql_query("set names utf8");

$fp = fopen("db.sql","r") or die('can not open file');

while( $s = fgets( $fp,100000 ) ){

$m .= $s;

}

$sql_content = explode(";\n",$m);

$i = 0;

$max = count($sql_content) ;

while( $i < $max ){

mysql_query( $sql_content [$i] );

if( mysql_error()) echo mysql_error()."";

else{

$n ++;

}

$i ++;

}

echo "mysql queries:".$n;

fclose($fp);

?>

导入方法(请保证已经将数据库结构导入了新的数据库):

1.将以上php代码存为import.php,放置在根目录中;

2.用记事本打开import.php,修改前面4行数据库连接;

3.解压缩刚才已经备份下来的数据库内容文件,重命名为 db.sql,上传到网站根目录;

4.打开网站 http://您的域名/import.php ,若设置正确的话,数据库将在数秒之内导入成功,即使10M的数据库也不会超时;

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: