MAMPでSQLをインポートできない

このQ&Aのポイント
  • MAMPでphpmyadminを使って90MのSQLをインポートしようとしたが、ファイルサイズが大きすぎてエラーが発生。
  • php.iniファイルの設定を変更し、memory_limit、post_max_size、upload_max_filesize、max_execution_timeを増やしたが、エラーが解消されず。
  • 他に見落としている点があるかどうか、教えていただけると助かります。
回答を見る
  • ベストアンサー

MAMPでsqlをインポートできない

macカテゴリで回答が頂けなかったのでphpの方で再度質問させてください。 mampでphpmyadminを使って90Mのsqlをインポートしようとしたのですが ファイルサイズが大きすぎるため下記のようなエラーが出ました。 Fatal error: Allowed memory size of xxxxxx bytes exhausted phpinfoにてphp.iniファイルの場所を確認し該当するphp.iniの memory_limit post_max_size upload_max_filesize max_execution_time 等を大幅に増やして書き換えました。 MAMPを再起動しphpinfoで設定が反映されたのも確認したのですが どうしても上記のエラーが解消されません。 何か他に見落としている点はありますでしょうか? ご教授頂けますようお願いいたします。

  • PHP
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • memphis
  • ベストアンサー率40% (975/2395)
回答No.1

サイズが大きいのが原因でしょう。 90Mは圧縮したサイズ?それとも圧縮していない? 圧縮していないなら、gzip等で圧縮すればサイズが小さくなってできると思います。 それでもダメなら、ターミナルからコマンドを使ってインポートして下さい。

yosakun
質問者

お礼

ターミナルからやってみます。 ありがとうございます。

関連するQ&A

  • PHPでファイルアップローダー

    PHPでファイルアップローダーを作成しましたが、サイズの大きなファイルがアップロードできなくて困っています。 具体的には、900MBのファイルアップロードはできますが、1.4GBになるとアップロードできていません。 設定値は下記のようにし、十分にとっているつもりです。なお、HTMLで表示した実際に使われている設定値です。 <?php echo 'memory_limit = ' . ini_get('memory_limit') . "<br />"; echo 'post_max_size = ' . ini_get('post_max_size') . "<br />"; echo 'upload_max_filesize = ' . ini_get('upload_max_filesize') . "<br />"; echo 'max_execution_time = ' . ini_get('max_execution_time') . "<br />"; echo 'max_input_time = ' . ini_get('max_input_time') . "<br />"; ?> ↓ memory_limit = 5120M post_max_size = 5120M upload_max_filesize = 5120M max_execution_time = 300 max_input_time = 300 $_FILEを確認すると、下記のようにファイル名以外空となっています。エラーコードが0で正常アップロードの判定になっているので、原因が分からず困っています。 array(1) { ["upfile"]=> array(5) { ["name"]=> array(5) { [0]=> string(24) "testfile.ISO" [1]=> string(0) "" [2]=> string(0) "" [3]=> string(0) "" [4]=> string(0) "" } ["type"]=> array(5) { [0]=> string(0) "" [1]=> string(0) "" [2]=> string(0) "" [3]=> string(0) "" [4]=> string(0) "" } ["tmp_name"]=> array(5) { [0]=> string(0) "" [1]=> string(0) "" [2]=> string(0) "" [3]=> string(0) "" [4]=> string(0) "" } ["error"]=> array(5) { [0]=> int(2) [1]=> int(4) [2]=> int(4) [3]=> int(4) [4]=> int(4) } ["size"]=> array(5) { [0]=> int(0) [1]=> int(0) [2]=> int(0) [3]=> int(0) [4]=> int(0) } } } アドバイスいただければ幸いです。

    • 締切済み
    • PHP
  • ini_setのpost_max_size

    お世話になります。 ini_setの「post_max_size」がなぜか正常に動作しません。「upload_max_filesize」はうまく動作するのですが・・・。 --------------------------------------------- $aaa = ini_set("upload_max_filesize","2M"); $bbb = ini_get("upload_max_filesize"); $ccc = ini_set("post_max_size","3M"); $ddd = ini_get("post_max_size"); --------------------------------------------- ↑これを実行すると以下のように表示されます。 --------------------------------------------- aaa=16M bbb=2M ccc= ddd=8M --------------------------------------------- 本来「ccc=8M」、「ddd=3MB」となるはずなのですが..。$cccを単体で実行してもうまくいきません。 上記から分かりますように、実行環境のphp.iniの設定は、 memory_limit = 64M post_max_size = 8M upload_max_filesize = 16M となっています。マニュアルには 「memory_limit >= post_max_size >= upload_max_filesizeでなければならない」 とありますので、実際は「upload_max_filesize」を「post_max_size」の8M以下に設定し直さなければならないとは思うのですが、これがini_setがうまくいかない原因になり得るでしょうか? 何かご存知の方がいらっしゃいましたら教えて下さい。PHPのバージョンは4.2.2です。

    • ベストアンサー
    • PHP
  • phpmailerで送れない添付ファイルサイズ

    jphpmailerを利用して数Mのファイルをメールへ送っています。 こちらは問題なく動いているのですが、同じシステムを使って 10Mを超えるファイル(?試したのは15M程度)が送ることが出来ません。 php.ini関連の設定かと思い色々設定をしてみたのですがその 大きいサイズのファイルだけ送ることが出来ませんでした。 [経緯] 1. Fatal error: Allowed memory size of 52428800 bytes exhausted (tried to allocate 19334337 bytes) と出たのでphp.iniのmemory_limitを100Mに上げた 2. 上記エラーはでなくなりましたが、phpmailer内にあるエラー Could not instantiate mail function. と表示されるようになった。 3. php.ini等いろいろいじって、現在は.htaccessを変更した状態になっていますが2の表示のまま .htaccess内: php_value max_execution_time 120 php_value memory_limit 512M php_value post_max_size 512M php_value upload_max_filesize 512M [質問] どの部分でエラーになっている事が考えられるでしょうか?? (php.iniの設定?sendmail?) 対処法があれば教えてください。 [バージョン等] php5.3 サーバ:heteml 共用サーバ hetemlの通常のメールの制限は100Mでした よろしくお願いします。

    • 締切済み
    • PHP
  • FreeBSDのPHPでファイルのアップロードができない

    FreeBSD 5.3R:Apache/2.0.52:PHP Version 4.3.4にてPHPでファイルのアップローダを作成しているのですが、うまく動作しません。(/tmpにテンポラリファイルが作成されないようです。)設定は・・・ memory_limit = 40MB post_max_size = 36MB upload_max_filesize = 32MB upload_tmp_dir = /tmp max_execution_time = 260 max_input_time = 300 となっているのですが、phpinfo()で確認すると、何故かmemory_limitの表示がConfiguration PHP Coreにありません。 これに起因するものではないかと思っているのですが、FreeBSDでPHPを使ってらっしゃる方でこのあたりに詳しい方、是非ご教授ください。

    • 締切済み
    • PHP
  • upload_max_filesizeを超えるファイルのアップロード

    phpにて動画ファイルをアップロードするプログラムを作成しています。 うまくアップロードされないため調べましたところ、upload_max_filesizeを超えたサイズだったためでした。 現状、2Mになってます。 レンタルサーバーなので、php.iniは触れないので、upload_max_filesizeを変えずに対応したいのですが、どうにか方法はないものでしょうか?

    • 締切済み
    • PHP
  • php.iniについて

    php.iniについて よろしくお願いします。 【問題点】 upload_max_filesizeをデフォルトの2Mから8Mに変えたいがphp.iniファイルを変えても、 phpinfo();のコマンドで2Mのままで表示されてしまう。 【現状】 1.Loaded Configuration File「C:\Windows\php.ini」を変えたが反応がない。 2.サーバも再起動してみたが、変わらなかった。 3.他のローカルディスクC内の他の「php.ini」を消しても変化なし 4.全ての「php.ini」を消してもphpinfo()が動いた(全部消したのにどこのiniファイルを見てるんだろ?) お手上げ状態です・・・ ご助力の程、よろしくお願いいたします。

  • サーバへのアップロードが出来ない。

    表題の通り、アップロードしたファイルが取得出来ずに困っています。 環境はCentOSで、バージョンは覚えていません。 php.iniの設定 file_uploads = On upload_tmp_dir = "/tmp/apache" upload_max_filesize = 1024M memory_limit = 1024M post_max_file = 1024M upload_tmp_dirの値ですが、初期は/tmpだったのですが、権限の問題を疑った為、変更しました。 cd /tmp mkdir apache chmod 777 /etc/apache chown apache:apache apache としてあります。 テストで実際に使っているファイルです。 - index.php <html> <head> </head> <body> <form action="index.php" method="post" enctype="multipart/form-data" name="test"> <input type="file" size="80"> <input type="hidden" name="MAX_FILE_SIZE" value="10000000"> <input type="submit" value="アップロード"> </form> <?php var_dump( ini_get('memory_limit') ); var_dump( ini_get('post_max_size') ); var_dump( ini_get('upload_max_filesize') ); var_dump($_FILES); ?> </body> </html> apacheのエラーログも確認しましたが、$_FILESを$_FILEに書き換えて見た時以来、エラーは出ていませんでした。 解決方法をご存知の方がおりましたら、是非ともご教授頂ければと思います。

    • ベストアンサー
    • PHP
  • ローカルで動いているPHPがタイムアウトする

    ローカルで動かしているPHPプログラム (他のサイトからソースを自動取得するシステム) を動かしているのですが 巡回するサイトが多いため Maximum execution time of 60 seconds exceeded とエラーが発生してしまいます。 PHP.iniの max_execution_time = 60 max_input_time = 60 の箇所を max_execution_time = 360 max_input_time = 360 へ post_max_size = 20M upload_max_filesize = 20M をそれぞれ100MBへ変更しましたが Fatal error: Maximum execution time of 60 seconds exceeded とエラーが表示されます。 どなたか恐縮ですがこの問題に長けている方のご返信をお待ちしています。 それでは宜しくお願いいたします。

    • ベストアンサー
    • PHP
  • phpで巨大なファイルをアップロード

    お世話になります。 PHP・Apacheを使用して大きな容量のファイルをアップロードしようとしています。 php.iniで下記のように値を変更しました。 max_execution_time = 1800 max_input_time = 1800 memory_limit = 2048M post_max_size = 2048M upload_max_filesize = 2048M default_socket_timeout = 1800 この状態でApacheを再起動して1.2GBほどのファイルをアップロードしてみたのですが エラーも起こらず、正常にアップロードされたかと思ったら160バイト程の容量でサーバーにあがっていました。 600MBくらいのファイルでためしたところ正常にアップロードされたのですが 1GB以上のファイルをアップロードするためにはまだなにか設定が足りない、または間違っているのでしょうか? サーバーはCentOS5.5の64bit、メモリは16GBあります。 回答よろしくお願いします。

    • ベストアンサー
    • PHP
  • ファイルのアップロードサイズについて

    環境は linux+Apache+php になります。 ファイルのアップロードサイズについてですが、php.iniに post_max_size = 8M upload_max_filesize = 4M 等の記載がなく、またhttpd.confも AllowOverride none (.htaccessファイル 無効?) になっていた場合、アップロードできるサイズの制限はデフォルトの post_max_size = 8M upload_max_filesize = 2M になるのでしょうか? AllowOverride all の設定で、httpdファイルに記載が無い場合などは調べられたのですが htaccessが無効の場合がちゃんと調べられなくて、 デフォルトだろうなと思いながらも、知識のある方に教えていただきたく、 質問させていただきました。 よろしくお願いいたします。

    • ベストアンサー
    • PHP

専門家に質問してみよう