我有一個RHEL 5系統,有一個新的硬盤驅動器,我只是專用於MySQL服務器。爲了讓事情開始,我使用了「mysqldump --host otherhost -A | mysql」,儘管我注意到manpage從未明確推薦嘗試這種方式(mysqldump到文件中是一個禁止行爲,我們正在談論500G的數據庫)。mysqldump | mysql會產生「太多打開的文件」的錯誤。爲什麼?
這個過程會隨機失敗,抱怨打開了太多文件(在這一點mysqld獲取相關信號,並死亡和重新生成)。
我試着把它放在sysctl和ulimit上,但問題依然存在。我該怎麼做呢?
或者,如果您使用的是innodb表,請嘗試--single-transaction,它避免了文件句柄的運行問題以及鎖定所有表 – 2008-09-17 13:52:08