SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
技術者募集中

【MySQL】mysqldump で Too many open files が出たとき

問題

mysqldumpしていたら、以下のようなエラーが出ました。

mysqldump: Got error: 23: Out of resources when opening file './xxx/yyy.MYD' (Errcode: 24 - Too many open files) when using LOCK TABLES
mysqldump: Got error: 1016: Can't open file: './aaa/bbb.frm' (errno: 24 - Too many open files) when using LOCK TABLES

答え

テーブルが多いと、MySQLのファイルハンドラの上限に達することがあります。

現在の設定の確認

SHOW VARIABLES LIKE 'open%';

設定の変更(例)

my.cnf を編集

open_files_limit = 4096

答え 2

テーブルのロックをさせないでmysqldumpする方法もあります。

以下のオプションを使うと、エラーは回避できます。

mysqldump --skip-lock-tables データベース名 > 出力先

ロックしないので、ダンプ中のデータの変更には注意。

関連するメモ

コメント