phpMyAdminでDUMPしたSQL文ファイルが18MBほどあるのですが、
このファイルを丸ごと別のPCにインポートしようとすると、
タイムオーバーなどで途中までしか受け付けてもらえません。
どこからどこまでがインポートされたかも判別できず、
けっきょくCREATE TABLEなど最初からやり直したりして不便してます。
また、最後まで「完走」するためには、php.iniとかphpMyAdminの
configファイルなどで、ファイルサイズやタイムアウトまでの
時間を延ばしたりするのでしょうが、具体的にどこをどのように
書き換えればよいでしょうか。
環境:
PHP4.4.4
MySQL 4.0.26
IIS5.1
No.4ベストアンサー
- 回答日時:
phpMyAdminのソースをちょっと見ました。
「スクリプトがタイムアウトを過ぎました。・・・」
というメッセージが出る条件は、
・allow_interruptがtrue
(AND)
・アップロードに掛かる時間が、php.iniのmax_execution_time設定よりも大きい
場合のようです。この辺の設定をいじれば、何とかなりそうです。allow_interruptは、phpMyAdminの画面(インポートへの割り込み云々のチェックボックス)で設定できるようです。
(すみませんが、確認はしていません)。
あと、php.iniの以下の設定も要注意です。
upload_max_filesize、memory_limit、post_max_size
cooz7654さんご指摘のように、可能であれば、DOS窓でmysqlクライアントを起動して、そこからLOAD DATA INFILEなどをした方がよいと思います。
fdsjaklfjasさん、ソースまでご確認いただき恐縮です。
とりあえず、巨大ファイルを小分けにしてインポートしたのですが
見事に文字化けして(EUCをJISで取り込んでいた(T-T))
ご教示のLOAD DATA INFILEというのを調べて
取り組んでみます。
ご教示ありがとうございました。
No.3
- 回答日時:
php.iniでデーフォルトで下記の様になっている箇所を変更して、
タイムアウト時間を延ばすということでいいのかな?
default_socket_timeout = 60
(秒単位)
ただ、直接サーバに対して権限がおありなのであれば、
直接DBでインポート処理した方がいい気はします。
この回答への補足
> php.iniでデーフォルトで下記の様になっている箇所を変更して、
> タイムアウト時間を延ばすということでいいのかな?
cooz7654さん、アドバイスありがとうございます。ご教示どおり
default_socket_timeout = 1200 ←(20分)
としてIISを再起動してみましたが(20分たたなくても)
10分くらいで
「スクリプトがタイムアウトを過ぎました。
インポートを終わらせたい場合、同じファイルを再送信し、
インポートを再開させてください」
といわれますね(phpMyAdmin - 2.8.2.4に)
> ただ、直接サーバに対して権限がおありなのであれば、
> 直接DBでインポート処理した方がいい気はします。
これはどういうことでしょうか。
phpMyAdmin - 2.8.2.4で操作するのは
「直接DBでインポート処理」していることにはなりませんか?
ローカルで、DOS窓にDUMP(エクスポート)されたSQL文を
流したほうがよいでしょうか?
No.2
- 回答日時:
そうですか・・・。
そうなるとIISの設定ですね。
恥ずかしながら私はIISは10年近く触ってないのでわかりませんが
apacheであればhttpd.confのTimeoutというパラメータが
あるようですから、IISにも同等の設定があると思います。
「IIS タイムアウト 設定」あたりで検索するといくつかヒットしますので
参考になるかと。
apacheでそのほかに気にする箇所はpost_max_sizeとupload_max_filesize
があります。ようはpostで送れるサイズとファイルで送れるサイズを
指定するのですが、意外にpost値が少なくてファイルサイズ制限に
かかって悩む場合があるかもしれません。IISはどうなんでしょね。
この回答への補足
yamabejpさん、たびたびありがとうございます。
>「IIS タイムアウト 設定」あたりで検索するといくつかヒット
するのですが、ピンポイントな設定方法が見当たりません。
HELP等を含め、少し調べてみます。まずは御礼申し上げます。
No.1
- 回答日時:
(1)SQLを分割しておくるか(2)ファイルでアップして、シェルでmysqlに
リダイレクトするのいずれかでいかがでしょう。
タイムアウトを伸ばすのは攻撃に弱くなるのでお勧めできません。
この回答への補足
yamabejpさん、毎度お世話になります。
ご教示のように、これまではSQLを分割して対応してましたが
タイムアウトなどの設定ひとつでラクができるなら
そうしたい気分です。
DUMPしたSQLファイルのインポート先は
ローカル(XP+IIS)の開発環境ですので、
タイムアウトとかで片付くならできるだけそちらで
済ませたいのですが。。。。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
- Outlook(アウトルック) 【 Windows 10 】アドレス帳に正しくインポートを完了させたい。 3 2023/04/23 13:41
- Excel(エクセル) Power Query で取り込むデータのパスを相対パスに出来ませんか? 3 2022/04/05 18:31
- WordPress(ワードプレス) インポートできない 2 2023/06/24 01:02
- Excel(エクセル) Excel同士のデータの突合 3 2023/08/07 16:34
- Access(アクセス) Access2016のExcelインポートの機能のことで教えてください 1 2022/09/11 14:58
- MySQL MySQL,JavaScript,PHPコードの結果を表示する方法を教えてください。 1 2023/02/13 17:49
- PostgreSQL PostgressからMySQL(MariaDB)へ構造を変更する際のTimestamp等について 2 2023/04/04 12:09
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
- 写真・ビデオ iphoneからPCへ写真をインポート、保存先がわかりません。 2 2022/09/29 02:06
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
onedrive にexcelファイルをア...
-
ファイルをGET送信でアップロー...
-
youtubeに音声のみのmp4ファイ...
-
FTPClientで転送結果(OKかFAIL)
-
aws cloud9というものを使って...
-
ファイルサイズがpost_max_size...
-
BASP21のFTPで日本語ファイル名...
-
画像ファイルの名前をそのままU...
-
$_Filesのnameについて
-
アップロード 仕方教えて
-
php,file_get_contentsの結果が...
-
Dreamweaver ドリームウィーバ...
-
いいかげんxamppなんとかしたい...
-
フォントの色を変えるには?
-
<大至急!>ご教授願います。
-
メレンゲの歴史
-
PHPのif文でその処理を途中で抜...
-
VBSの「MsgBox」について
-
こちらはただの直列処理ですか?
-
トランザクションが原因?DBに...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
onedrive にexcelファイルをア...
-
ファイルアップロードの上限を...
-
youtubeに音声のみのmp4ファイ...
-
one drive のアップロード失敗...
-
FTPClientで転送結果(OKかFAIL)
-
VBでクラウドストレージにア...
-
ftpでアップロードが出来ない
-
アップロードできるファイルサ...
-
ファイルをGET送信でアップロー...
-
FTP接続の例外処理
-
「クラウドにアップロード」」...
-
PHP 画像アップロード 重複防止
-
aws cloud9というものを使って...
-
ファイルサイズがpost_max_size...
-
ファイルアップロードしたもの...
-
csvファイルをMySQLにインポー...
-
全角ファイル名をアップロード...
-
ファイルのアップロードで、フ...
-
携帯からファイルアップロード...
-
SmartyでHTMLソースの変更が反...
おすすめ情報