約12MBのSQLファイルをインポートしたい。しかし、ロード中に問題が発生します。SQLファイルを分割せずにアップロードする方法はありますか?
約12MBのSQLファイルをインポートしたい。しかし、ロード中に問題が発生します。SQLファイルを分割せずにアップロードする方法はありますか?
回答:
OSの好みに応じて、mysqlコンソールからインポートしてみてください。
mysql -u {DB-USER-NAME} -p {DB-NAME} < {db.file.sql path}
または、リモートサーバー上にある場合は、-hフラグを使用してホストを指定します。
mysql -u {DB-USER-NAME} -h {MySQL-SERVER-HOST-NAME} -p {DB-NAME} < {db.file.sql path}
mysql
1回の移行でサーバーにインストールするよりもはるかに簡単です。助けてくれてありがとう!(また、角かっこは必要ありませんでした)
あなたがしなければならない3つのこと:
でphp.ini
PHPインストールの(注:操作するために、右のphp.iniを見つけ、あなたはCLIは、Apache、またはnginxのためにそれをしたい場合は異なります)
post_max_size=500M
upload_max_filesize=500M
memory_limit=900M
または他の値を設定します。
apacheがインストールされている場合はapacheを再起動/リロードし、nginxを使用している場合はnginxの場合はphp-fpmを再読み込みします。
リモートサーバー?
max_execution_time
ファイルのアップロードに時間がかかるため、同様に増加します。
NGINXのインストール?
:あなたが追加する必要がありますclient_max_body_size 912M;
中/etc/nginx/nginx.conf
にhttp{...}
ブロック
/etc/php/7.1/apache2/php.ini
しませんでした
phpinfo()
して、値が正しく設定され、サーバーが再起動されたことを確認してください
phpmyadminディレクトリにあるconfig.inc.phpファイルを編集します。私の場合、それはにありC:\wamp\apps\phpmyadmin3.2.0.1\config.inc.php
ます。
その上にある行を見つけて、次の$cfg['UploadDir']
ように更新します$cfg['UploadDir'] = 'upload';
次に、phpmyadminディレクトリ内に「upload」というディレクトリを作成します(私にとってはC:\wamp\apps\phpmyadmin3.2.0.1\upload\
)。
次に、インポートしようとしている大きなSQLファイルを新しいupload
ディレクトリに配置します。phpmyadminコンソール内のdbインポートページに移動すると、以前は存在しなかったドロップダウンが表示されます。これには、作成したばかりのアップロードディレクトリ内のすべてのSQLファイルが含まれています。これを選択して、インポートを開始できます。
WindowsでWAMPを使用していない場合は、それほど問題なくこれを環境に適応させることができると確信しています。
参照:http://daipratt.co.uk/importing-large-files-into-mysql-with-phpmyadmin/comment-page-4/
config.default.php
、同じディレクトリの、phpMyAdminのバージョン4.6.4使用しています
libraries/config.default.php
LINUXユーザー向けのソリューション(sudoで実行)
'upload'および 'save'ディレクトリを作成します。
mkdir /etc/phpmyadmin/upload
mkdir /etc/phpmyadmin/save
chmod a+w /etc/phpmyadmin/upload
chmod a+w /etc/phpmyadmin/save
次に、phpmyadminの設定ファイルを編集します。
gedit /etc/phpmyadmin/config.inc.php
最後に、「upload」ディレクトリと「save」ディレクトリの両方に絶対パスを追加します。
$cfg['UploadDir'] = '/etc/phpmyadmin/upload';
$cfg['SaveDir'] = '/etc/phpmyadmin/save';
これで、ファイルを/etc/phpmyadmin/upload
フォルダーにドロップするだけで、phpmyadminからファイルを選択できるようになります。
この助けを願っています。
File could not be read!
、アップロードフォームの送信ボタンをクリックすると、phpmyadminからメッセージが表示されます。現在、これをトラブルシューティングしている最中です。
sudo chmod 777 your-filename.sql
1行で完了です(mysqlコマンドがグローバルとして使用可能であることを確認するか、mysqlインストールフォルダーに移動してbinフォルダーに入ります)
mysql -u database_user_name -p -D database_name < complete_file_path_with_file_name_and_extension
ここに
u
Userの略ですp
パスワードの略D
データベースの略です---データベース名の後に記号を追加することを<
忘れないでください---
名前と拡張子を含む完全なファイルパスは次のようになります
c:\folder_name\"folder name"\sql_file.sql
---フォルダとファイル名に二重引用符を使用してバインドするよりも多くのスペースが含まれている場合---
ヒントと注意:パスワードは後で書き込むことができます-p
が、その時点で画面を見ている他の人に表示されるため、お勧めしません。パスワードを入力しないと、Enterキーを押してコマンドを実行するタイミングを尋ねられます。
.sql
ファイルに次の構成を含めることで、大きなファイルをインポートできましたhttpd.conf
。
Alias /phpmyadmin "C:/xampp/phpMyAdmin/"
<Directory "C:/xampp/phpMyAdmin">
AllowOverride AuthConfig
Require all granted
php_admin_value upload_max_filesize 128M
php_admin_value post_max_size 128M
php_admin_value max_execution_time 360
php_admin_value max_input_time 360
</Directory>
php.iniファイルを編集する必要があります。upload_max_filesize
post_max_size
ファイルサイズに合わせて以下を変更してください。
phpinfo()
現在の値を確認するために実行しようとしています。php.iniファイルを直接変更する自由がない場合は、ini_set()を試してください。
それも選択肢にない場合は、bigdumpを試してみてください。
誰も最も簡単な方法について言及していない理由がわかりません....大きなファイルをhttp://www.rusiczki.net/2007/01/24/sql-dump-file-splitter/で分割し、 実行した後、vie mySQL admin構造を持つファイルから始まる分離された生成ファイル
そのためには、php.ini
ファイルを編集する必要があります。ubuntuサーバーを使用している場合、これはリンクです。phpMyAdminに大きなファイルをアップロードすると役立つ場合があります。
私は記事に出くわしました、そしてこれは私にとって最もうまくいきました
ハードドライブ»アプリケーション»MAMP»bin»config.inc.php
$cfg[‘UploadDir’]
–次のようになります。$cfg['UploadDir'] = '';
$cfg['UploadDir'] = 'upload';
次に、そのphpmyadminディレクトリ内に新しいフォルダーを作成し、アップロードする名前を付けます。
インポートしようとしている大きな.sqlファイルを取得し、その新しいアップロードフォルダーに配置します。
これで、次にデータベースをphpMyAdminにインポートするときに、[インポートするファイル]セクションの標準の参照領域のすぐ下に新しいドロップダウンフィールドが表示されます。
PHPMyAdminを使用しますが、ターミナルを使用するのが最善の方法である場合もあります。
mysql -h localhost -u root -p
ユーザーとデータベースの場所のルートとローカルホストを切り替えます)\. /path/to/your/file.sql
以上です。リモートサーバーを使用している場合は、.sqlファイルをいくつかのフォルダーにアップロードする必要があることを覚えておいてください。
共有ホスティングを使用している人のための答え。300MBのDBファイルをサーバーにインポートするために使用したこの小さなスクリプトを使用するのが最適です。このスクリプトはBigDumpと呼ばれます。
MAMPでは、次の方法で巨大なファイルをロードできます。
このディレクトリに新しいフォルダを作成します/ MAMP / bin / phpMyAdmin / "folderName"
次に、「/ MAMP / bin / phpMyAdmin /config.inc.php」の531行目を編集します。
$cfg['UploadDir']= 'folderName';
.sqlまたは.csvファイルをこのフォルダーにコピーします。
これで、「PhpMyAdmin」に別のオプションが表示されます。Webサーバーのアップロードディレクトリから選択します。newFolder/:ファイルを選択してインポートできます。
今すぐどんなファイルでもロードできます!!
大きなファイルをアップロードする最良の方法は、phpmyadminを使用しないでください。原因phpmyadinは、最初にphpアップロードクラスを使用してファイルをアップロードし、次にsqlを実行します。これにより、ほとんどの場合、タイムアウトが発生します。
最善の方法は次のとおりです。wampfolder> bin> mysql> bin dirrectoryと入力し、次の行を記述します
mysql -u root -p listnames <latestdb.sql ここでlistnamesは最初にデータベース名であり、空のデータベースを作成してください。latestdb.sqlは、データが存在するSQLファイル名です。
ただし、重要なことの1つは、データベースファイルにUnicodeデータがあるかどうかです。latestdb.sqlファイルと1行前の1行を開く必要があります。行は:
セット名utf8; 次に、コマンドモードでこのスクリプトコードを実行します
サーバー設定を変更して、12 mbを超えるファイルのアップロードを許可すると、問題がないはずです。通常、サーバー設定はファイルアップロード用に5〜8mbに設定されています。
phpmyadminによって生成された大きなデータベースダンプをインポートするように設計されたPHPスクリプトを作成しました。これはPETMIと呼ばれ、ここからダウンロードできます[プロジェクトページ] [gitlabページ]。1GBのデータベースでテストされています。
mysql workbench
またはmysql Yog