Mariadb

我從 /var/lib/mysql 中刪除了一個文件夾,現在我的所有數據庫似乎都無法訪問

  • December 19, 2021

嘗試刪除數據庫時收到此錯誤:

ERROR 1010 (HY000): Error dropping database (can't rmdir './redpopdigital@002ecom', errno: 39 "Directory not empty")

所以我進去了/var/lib/mysql,只是做了一個rm -rf. 我不知道這會與幾乎所有其他數據庫一起使用。

現在看來我的所有數據庫都無法訪問。

我嘗試將此作為故障排除步驟:

ubuntu@blainelafreniere:~$ mysqlcheck --repair blainelafreniere -u root -p
Enter password: 
blainelafreniere.wp_commentmeta
Error    : Table 'blainelafreniere.wp_commentmeta' doesn't exist in engine
status   : Operation failed
blainelafreniere.wp_comments
Error    : Table 'blainelafreniere.wp_comments' doesn't exist in engine
status   : Operation failed
blainelafreniere.wp_links
Error    : Table 'blainelafreniere.wp_links' doesn't exist in engine
status   : Operation failed

奇怪的是,所有數據似乎都令人不寒而栗/var/lib/mysql……但由於某種原因我無法訪問它?

有沒有希望從中恢復數據,/var/lib/mysql或者我完全搞砸了?

謝謝。

mysqlcheck無濟於事,它用於損壞的文件。

您應該刪除目錄中的非表文件,而不是目錄本身。特別是如果你使用 MySQL 8,我懷疑。因為您的表元數據儲存在內部字典中。

無論如何,你沒有備份嗎?

如果沒有,請重新創建目錄並嘗試執行單個DROP TABLEs。它可能有效,也可能無效。讓我知道事情的後續。

我進入 /var/lib/mysql 並且只是做了一個 rm -rf。我不知道這會與幾乎所有其他數據庫一起使用。

哦親愛的。

您的機器試圖阻止您刪除某些內容 - 但您還是強迫它?

它試圖保護的東西是你的 MySQL 安裝中——也沒有讓你停下嗎?

現在看來我的所有數據庫都無法訪問

不,你所有的數據庫都不見了。吐司。垃圾。“洗掉這個凡人線圈……”等等。

要做的事情:

  1. 從備份中恢復您的數據庫(您專門為這種“災難恢復”練習使用的數據庫)。
  2. 去閱讀$$ a little $$關於 MySQL 如何使用其數據目錄。
  3. 將來,如果可能的話,盡量避免在**文件系統級別處理任何數據庫。

我很感激您遇到了似乎是文件系統問題但正在調查和

$$ correctly $$解決這個問題會為你省去很多悲傷。

引用自:https://dba.stackexchange.com/questions/280112