ホームページ > php教程 > php手册 > PHP バックアップ/復元 MySQL データベース コード

PHP バックアップ/復元 MySQL データベース コード

WBOY
リリース: 2016-06-21 08:55:52
オリジナル
1221 人が閲覧しました

コードは次のとおりです。

1. データベースをバックアップし、ローカル [db_backup.php] にダウンロードします。

コード をコピーします。コードは次のとおりです:


//SQL ファイルの保存ファイル名を設定します
$filename=date("Y-m-d_H-i-s")."-".$cfg_dbname.".sql"; > // 保存されたファイル名
header("Content-disposition:filename=".$filename);
header("Content-type:application/octetstream");
header("Pragma: no -cache");
header("Expires:0");
// 現在のページ ファイル パスを取得し、SQL ファイルをこのフォルダーにエクスポートします
$tmpFile = (dirname(__FILE__)) . "\".$filename;
// MySQLDump コマンドを使用してデータベースをエクスポートします
exec("mysqldump -u$cfg_dbuser -p$cfg_dbpwd --default-character-set=utf8 $cfg_dbname > " .$tmpFile) ;
$file = fopen($tmpFile, "r"); // ファイルを開きます
echo fread($file,filesize($tmpFile)); ;
終了 ;


2. データベースを復元します [db_restore.php]



コードをコピーします

コードは次のとおりです:

[データベース SQL ファイル]:


php
// 私のデータベース情報は config.php ファイルに保存されているので、このファイルをロードしてください。
require_once((dirname(__FILE__) .'/) ../../include/config.php'));
if ( isset ( $_POST['sqlFile'] ) )
{
$file_name = $_POST['sqlFile' ] / /インポートする SQL ファイルの名前
$dbhost = $cfg_dbhost //データベースのホスト名
$dbuser = $cfg_dbuser; //データベースのユーザー名
$dbpass = $cfg_dbpwd; Password
$dbname = $cfg_dbname; //データベース名

set_time_limit(0); //タイムアウトを 0 に設定します。これは、常に実行されることを意味します。セーフモードでphpが無効な場合、インポートがタイムアウトする可能性があります。この場合、
$fp = @fopen($file_name, "r") または die("Cannot open." セクションでインポートする必要があります。 SQL ファイル $file_name" );//ファイルを開く
mysql_connect($dbhost, $dbuser, $dbpass) または die("データベース $dbhost に接続できません");//データベースに接続します
mysql_select_db($dbname) ) or die ("データベース $dbname を開けません");//データベースを開きます

echo "

データベースをクリアしています。お待ちください....
"; result = mysql_query("SHOW tables ");
while ($currow=mysql_fetch_array($result))
{
mysql_query("drop TABLE IF EXISTS $currow[0]"); "データ テーブルをクリアします【". $currow[0]."] 成功しました!
"
}
echo "
MYSQL のクリーニングが成功しました。";
echo "データベースのインポート操作を実行しています
//データベースをインポートするための MySQL コマンド
exec("mysql -u$cfg_dbuser -p$cfg_dbpwd $cfg_dbname < ".$file_name); 🎜>echo "< ;br>インポートが完了しました! ";
mysql_close()
}

;





関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート