ERROR 5 (HY000) at line xxx: Out of memory

MariaDB10.3をインターネット越しにCommand Promptより

c:\xampp\mysql\bin\mysql.exe -h10.0.0.1 -uroot -pPW db_name < D:^\WEB^\test.sql

ってWindowsよりSQLファイルを流したらOut of memoryとかすら出ずに、途中までしかInsertされない。めちゃデカSQLしたらもちろんOut of Memory。

だいたい100MBのSQLファイルでSQLDumpより取得したやつででた

とりあえずCentOS7にいれてるMariaDBのmy.cnfを


[mysqld]

innodb_log_file_size = 400M(たぶんこれはあんまり関係ない)

wait_timeout = 28800(これも関係なさそう?)

max_allowed_packet=512M(これは関係してそう)

って感じで編集したら出にくくなった気がするような、でもまだ出たときがあってなんか不安定

SQLdumpで –quick –skip-extended-insert オプションをつかって処理を少し分割させたけど、エラーでて、少しがっかり。

色々調べてるとSQLがインサート中はテーブルがロックされているような感じだった。

innodb_lock_wait_timeout =180にしたらとりあえず治った??

innodb_lock_wait_timeout が原因??

SQL入れている間はDBにアクセスできない現象が起きたが、これもテーブルロックが原因なんだろうか。なんか違うような。

innodb_lock_wait_timeout =180にしてからはまだ一度も失敗してない。

というか、エラーメッセージなしでコケるのは本当に勘弁してほしい