Mariadb
插入上的 MariaDB|‘刪除’/tmp/#sql-temptable-e931-bc-5.MAI’時出錯(錯誤程式碼:2“沒有這樣的文件或目錄”)’
從今天早上開始,我們的 MariaDB 實例開始出現以下錯誤。
刪除“/tmp/#sql-temptable-e931-bc-5.MAI”時出錯(錯誤程式碼:2“沒有這樣的文件或目錄”)
這發生在任何 DML 命令上。
有沒有人遇到過這種情況?
我想不出這怎麼可能發生。這裡有一些關於正在發生的事情的說明。
- 像這樣的文件名用於內部生成的臨時表。
- 當需要建構臨時表作為執行查詢的最簡單/最快的方式時,此類文件用於復雜
SELECTs
等。- 這樣的表是$$ normally $$查詢完成時刪除(取消連結)。
- 如果伺服器在查詢結束之前崩潰,這樣的“刪除”就不會發生,所以它仍然存在。
- 如果
tmpdir
專門指向“/tmp”,則作業系統將在重新啟動後折騰表。- 如果
tmpdir
指向“/tmp”以外的任何位置,則此類文件可能會保留下來並使磁碟混亂。它們可以安全地移除。(在 *nix 中,rm
即使查詢沒有完成也可以安全地使用它。這是作業系統的魔法。)- 權限
/tmp
是這樣的,永遠不會有問題,所以我無法解釋你的情況。