一次修復MySQL資料庫的經歷

2021-09-07 13:16:55 字數 722 閱讀 3601

實驗室伺服器的硬碟滿了,結果導致乙個線上服務的mysql資料庫的兩個錶壞了。具體症狀是desc cdb_searchindex顯示

error 1017 (hy000): can't find file: 'cdb_searchindex' (errno: 2)

這是要通過/etc/my.cnf(或者同類的mysql配置檔案)找到資料檔案的位置。定位後進入資料夾,ls cdb_searchindex*一看,只剩乙個cdb_searchindex.frm檔案了。

接下來要進行恢復了。

第一步是確定這個表的引擎型別,命令是:

show table status from `discuz`;

一看都是myisam,恢復起來就相對比較容易了。

第二步是在資料庫檔案所在的資料夾中新建cdb_searchindex.mydcdb_searchindex.myi兩個檔案,注意許可權應該是mysql的。

第三步是在mysql中用

repair table cdb_searchindex use_frm;
就可以恢復了。

第四步用

mysqlcheck discuz;
沒啥問題就ok了。

一次SQLServer資料庫修復經歷

資料庫損壞情況 資料庫有多個資料檔案及日誌檔案,其中乙個資料檔案損壞丟失,後通過檔案恢復工具恢復出來,但是有錯誤,導致資料庫無法啟動。修復步驟 1.首先嘗試 附加資料庫 根據網上的資料,如果資料庫損壞不嚴重的話,可以直接通過 附加資料庫 的方式恢復,但是很不幸,嘗試失敗 不過通過 附加資料庫 得到了...

資料庫優化 記一次Mysql的優化經歷

1.建立乙個課程表 create table course c id int primary key,name varchar 10 2.建立乙個學生表create table student s id int primary key,name varchar 10 3.建立乙個課程學生表creat...

一次mysql優化經歷

某日運維突然說無線終端的頻道頁介面訪問量很大,memcache快取扛不過來,導致mysql併發查詢量太大,導致伺服器不停地宕機,只能不停地重啟機器。遺憾的是運維並沒有告訴mysql查詢量具體有多大 無量化,比如一秒多少個查詢 針對這個問題,有同事建議改了mysql memcache的架構,採用red...