mysql 文件描述符_MySQL没有发布临时文件描述符
幾天前,我們遇到了
MySQL安裝的一些嚴(yán)重問題:
MySQL不斷打開臨時(shí)文件(正常行為)但這些文件從未發(fā)布過.結(jié)果是,最終磁盤空間耗盡,我們必須重新啟動(dòng)服務(wù)并手動(dòng)清理/ tmp.
使用lsof,我們看到這樣的事情:
mysqld 16866 mysql 5u REG 8,3 0 692 /tmp/ibyWJylQ (deleted)
mysqld 16866 mysql 6u REG 8,3 0 707 /tmp/ibf5adsT (deleted)
mysqld 16866 mysql 7u REG 8,3 0 728 /tmp/ibGjPRyW (deleted)
mysqld 16866 mysql 8u REG 8,3 0 5678 /tmp/ibMQDLMZ (deleted)
mysqld 16866 mysql 13u REG 8,3 0 5679 /tmp/ibQAnM42 (deleted)
也許它沒有關(guān)系,但是當(dāng)我們關(guān)閉服務(wù)器時(shí),文件最終被釋放,我們可以在MySQL日志中看到以下警告:
121029 7:44:27 [Warning] /usr/local/mysql/bin/mysqld: Forcing close of thread 1333 user: 'xxx'
121029 7:44:27 [Warning] /usr/local/mysql/bin/mysqld: Forcing close of thread 1156 user: 'yyy'
121029 7:44:27 [Warning] /usr/local/mysql/bin/mysqld: Forcing close of thread 1151 user: 'zzz'
其中’xxx’,’yyy’和’zzz’是不同的mysql用戶(以及只有3個(gè)與數(shù)據(jù)庫(kù)有活動(dòng)連接的用戶).
我們有一些理論:
>操作系統(tǒng)出現(xiàn)問題,導(dǎo)致文件處理程序保持打開狀態(tài). OS“刪除”操作是否有可能阻塞線程直到關(guān)閉?這可以解釋關(guān)閉時(shí)的警告以及在進(jìn)程終止時(shí)最終刪除文件的事實(shí).
>到目前為止,數(shù)據(jù)集非常小,臨時(shí)文件相對(duì)較小,并且有足夠的時(shí)間釋放文件句柄而不會(huì)耗盡磁盤空間.
我們?cè)赗HEL 6.2上使用Mysql 5.5和默認(rèn)內(nèi)核.
總結(jié)
以上是生活随笔為你收集整理的mysql 文件描述符_MySQL没有发布临时文件描述符的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iptv内容运营系统服务器架构,IPTV
- 下一篇: mysql5.0 java连接_Java