Mysql

使用 .FRM .IBD .OPT 文件修復數據庫(硬拷貝 mysql 文件夾)

  • March 12, 2021

我的伺服器發生了崩潰。我唯一能做的就是硬拷貝mysql文件夾現在我正試圖通過 PHPMyAdmin 界面再次訪問我的數據庫。一些數據庫(主要是 WordPress)執行良好但有些數據庫只被查看而不顯示它們的內容

例如 表不存在

我使用REPAIR TABLE了查詢,但它沒有幫助

在此處輸入圖像描述

最後感謝德克斯特!

搜尋網際網路大約 6 小時後回答連結: https ://stackoverflow.com/a/56641702/12873930

###文件需要恢復

xampp(old folder)/mysql/data/

ibdata1
ib_logfile0
ib_logfile1
<databasename>/*.frm
<databasename>/*.ibd

###第1步

  1. 安裝相同版本的xampp後。
  2. 不要啟動apache或mysql

###第2步

  • 轉到mysql/data文件夾並替換,ibdata1ib_logfile0``ib_logfile1
  • database現在將舊 xampp 備份中的文件夾複製粘貼到新安裝c:/xampp/mysql/data/的包含文件的 xampp 文件夾中.frm.ibd如果您不確定嘗試使用一個數據庫。

###步驟 3

  • c:/xampp/mysql/bin尋找my.cn
  • 打開my.cn文件並查找#skip-innodb並在其下查找將其innodb_log_file_size=5M更改為170M. innodb_log_file_size=170M. 這是您的日誌文件大小,如果您不確定,只需將其設置為170

###第4步

  • 現在打開目錄中的文件mysql_start.bat(Windows 批處理文件)c:/xampp/
  • –innodb_force_recovery=6後添加... --console
....

mysql\bin\mysqld --defaults-file=mysql\bin\my.ini --standalone --console
–innodb_force_recovery=6
if errorlevel 1 goto error
goto finish

###步驟 5

  • 現在啟動你的 Apache 和 Mysql。
  • 轉到您的phpmyadmin並檢查您的數據庫及其表。如果你沒有得到任何錯誤,那麼你就在正確的軌道上。
  • 停止 Apache 和 Mysql並複制粘貼其餘數據庫。

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