錯誤在我的服務器:Centos的服務器奇怪的錯誤
SQLSTATE[HY000]: General error: 1021 Disk full (/tmp/#sql_20fe_1.MAI); waiting for someone to free some space...
謝謝
錯誤在我的服務器:Centos的服務器奇怪的錯誤
SQLSTATE[HY000]: General error: 1021 Disk full (/tmp/#sql_20fe_1.MAI); waiting for someone to free some space...
謝謝
嘛錯誤是相當清楚的。進入/ tmp並查看佔用磁盤空間的內容。 您可以安裝ncdu以查看該文件夾中磁盤使用情況的摘要。 然後刪除你不需要的重啓MySQL
此外,1 G是不夠的,在生產環境中的臨時文件夾。你應該考慮擴大它。
錯誤來自MySQL server到來。 MySQL的分區沒有足夠的磁盤空間。 釋放分區上的磁盤空間,檢查分區上的項目並刪除不需要的文件。您可以通過df -h
和ls -lh
檢查大小,並刪除不需要的文件或增加磁盤大小。
MySQL可能位於'/'下面,它有空間的空間。改述你的答案。 –
MySQL有一個名爲VARIABLE
tmpdir
控制往哪裏放tmp目錄表。它可能設置爲/tmp
。但它可以更改爲其他目錄。請在/
下懸掛某處;那會給它空間。更多信息:https://dev.mysql.com/doc/refman/5.7/en/temporary-files.html
此外,檢查 「交叉連接」。如果你有一個SELECT
那JOINs
表,但沒有關於表如何相關的任何資格,你可能有一個「交叉連接」。交叉連接中的兩百萬行表將創建一個具有萬億行的臨時表。這將是一個混亂。
謝謝,我該如何擴展那個tmp文件夾?我認爲這是最好的主意,如果這很容易,我也可以訪問 – Robert
我強烈建議(如果你有足夠的內存)使tmp成爲tmpfs(所以它存儲在內存中)。然而,現在它存儲在硬盤上,所以你需要擴展它正在使用的分區:lvresize -r -L + XG的/ dev /映射器/ VG-TMP - 這樣會增加大小,如果你有足夠的空間 – DreamWave
@羅伯特如果你沒有足夠的磁盤空間,請檢查以下表單:https://www.centos.org/forums/viewtopic.php?t=55593 – DreamWave