-
-
//Mysqlビッグデータの高速バックアップ - //使用する前に、まずインポートするSQLファイル名、データベースホスト名、データベースユーザー名、パスワードを変更してください。コードコメントにデータベース名を入力します。
- //同時に、データベース ファイルとテキストを Web サイトのディレクトリに FTP で転送し、WEB モードでこのファイルにアクセスします
- //edit: bbs.it-home.org
- $file_name="bn_site.sql";/ /インポートするSQLファイル名
- $dbhost="localhost";//データベースホスト名
- $dbuser="root";//データベースユーザー名
- $dbpass="";//データベースパスワード
- $dbname="bn_site "; // データベース名
- set_time_limit(0);// タイムアウトを 0 に設定します。これは、常に実行されることを意味します。セーフモードでphpが無効な場合、インポートはタイムアウトします
- $fp=@fopen($file_name,"r") または die ("SQL ファイルを開けません"); でインポートする必要があります。 // ファイルを開きます
- mysql_connect($dbhost,$dbuser,$dbpass) または die("データベースに接続できません") // データベースに接続します
- mysql_select_db($dbname) または die("データベースを開けません"); /データベースを開く
- echo "はインポート操作を実行します";
- while($SQL=GETNEXTSQL()){
- if(!mysql_query($sql)){
- echo "実行エラー: "。 mysql_error()." font>
";
- echo "SQL ステートメントは次のとおりです:
".$SQL." ";
- };
- < ;p>gt;}
- echo "インポートが完了しました ";
fclose($fp) or die ("can"t close file $file"); // ファイルを閉じます - mysql_close();
- //ファイルから
- function GETNETSQL(){
- global $fp;
- $sql="";
- while( $line=@fgets($fp,40960)){ で項目ごとに SQL を取得します
- $line=trim($line);
- / /次の 3 つの文は、PHP の上位バージョンでは必要ありませんが、一部の下位バージョンでは変更が必要な場合があります。
- $line = str_replace("\\","\ ",$line);
- $line = str_replace("'"," '",$line);
- $line = str_replace("\r\n",chr(13).chr(10),$line) ;
- if (strlen($line)>1){
- if ( $line[0]=="-"&& $line[1]=="-"){
- continue;
- }
- } p>
$sql.=$line.chr(13 ).chr(10); - if (strlen($line)>0){
- if ($line[strlen($line)-1 ]==";"){
- break;
- }
- }
- }
- return $sql;
- }
- ?>
-
コードをコピー
|