約12MBのSQLファイルをインポートしたい。しかし、ロード中に問題が発生します。SQLファイルを分割せずにアップロードする方法はありますか?
22 に答える
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}
.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を試してみてください。
そのためには、php.ini
ファイルを編集する必要があります。ubuntu サーバーを使用している場合、これは link Upload large file in phpMyAdminです。
phpmyadmin によって生成された大きなデータベース ダンプをインポートするように設計された PHP スクリプトを作成しました。これは PETMI と呼ばれ、 [プロジェクト ページ] [gitlab ページ]からダウンロードできます。1GB のデータベースでテスト済みです。
phpmyadmin を使用せずに大きなファイルをアップロードする最良の方法。最初にphpmyadinがphpアップロードクラスを使用してファイルをアップロードし、次にsqlを実行すると、ほとんどの場合タイムアウトが発生します。
最善の方法は次のとおりです。 wamp フォルダー>bin>mysql>bin ディレクトリを入力してから、この行を書き込みます
mysql -u root -p listnames < latestdb.sql ここで listnames はデータベース名です。最初に空のデータベースを作成してください。latestdb.sql はデータが存在する SQL ファイル名です。
ただし、重要なことの 1 つは、データベース ファイルに Unicode データが含まれているかどうかです。latestdb.sql ファイルと、どの行よりも 1 行前に開く必要があります。行は次のとおりです。
セット名 utf8; 次に、コマンドモードでこのスクリプトコードを実行します
サーバー設定を変更して、12 MB を超えるファイルのアップロードを許可すれば問題ありません。通常、サーバー設定は、ファイルのアップロード用に 5 ~ 8 MB に設定されています。