web-dev-qa-db-ja.com

大規模なMySQLデータベースのインポート中に、300秒の最大実行時間がエラーを超えました

コマンドで641 MBのMySQLデータベースをインポートしようとしています。

mysql -u root -p ddamiane_fakty < domenyin_damian_fakty.sql

エラーが発生しました:

ERROR 1064 (42000) at line 2351406: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '<br />
<b>Fatal error</b>:  Maximum execution time of 300 seconds exceeded in <b' at line 253

ただし、制限ははるかに高く設定されています。

mysql> show global variables like "interactive_timeout";
+---------------------+-------+
| Variable_name       | Value |
+---------------------+-------+
| interactive_timeout | 28800 |
+---------------------+-------+
1 row in set (0.00 sec)

そして

mysql> show global variables like "wait_timeout";
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| wait_timeout  | 28800 |
+---------------+-------+
1 row in set (0.00 sec)
6
Spacedust

あなたの.sqlファイルには実際には<br /> <b>Fatal error</b>: Maximum execution time of 300 seconds exceeded in <bというテキストが含まれているようですが、これは明らかに有効なsqlではありません。 phpMyAdminなどのツールを使用してデータベースをエクスポートした可能性がありますが、その時点で短縮されたエクスポートを作成するのに300秒以上かかりました。

15
brain99

これは.sqlファイルの構文エラーです。 「<b>致命的なエラー:300秒の最大実行時間を超過した」という行があります。

このエラーはa PHP error to me。に似ています。データベースのエクスポート/ダンプ中に、phpが300秒後に停止し、エラーを出力->ファイルに書き込みました。

Php.iniを修正して実行時間を長くし、データベース全体を新しいファイルにエクスポートしてから、新しいファイルをインポートする必要があります(データベースはPHP ofcourseを介して)エクスポートされたと思います)。または、他のツールを使用してデータベースをダンプし(mysqldump、またはGUIを使用する場合はmysql-workbenchなど)、それをインポートします。

2
mulaz

これは古い質問であることはわかっていますが、このエラーが発生する原因を明確にしたいと思います。

通常、このエラーは、大きなMySQLデータベースをSQLファイルにエクスポートしたが、エクスポートが正常に完了せず、SQLファイルの半分にMySQLエラーが追加された場合に発生します。

次に、エクスポートが成功したと想定し、別の場所にインポートしようとしたところ、このエラーが発生しました。

0