MySQL恢復(fù)中的幾個(gè)問題解決方法
事情是這樣的: 我有個(gè)BuyVM的VPS,結(jié)果人家機(jī)器掛了,然后新開了一個(gè)給我,我要求給我導(dǎo)出備份,人家還真搶救出來大部分?jǐn)?shù)據(jù).然后就是一個(gè)恢復(fù)的過程.Web恢復(fù)沒有任何難度.問題就出在MySQL的恢復(fù)上,記一筆.
1. data目錄完整,但是無法讀出任意一個(gè)表,show tables顯示為空.
起先是懷疑data目錄有問題,嘗試修復(fù),提示不存在表. 經(jīng)光總提醒說是不是用戶組問題.指定用戶組為mysql,解決.
chown -R mysql /var/lib/mysql
2.接著修復(fù),出現(xiàn)
warning : Table is marked as crashed and last repair failed
warning : 1 client is using or hasn't closed the table properly
warning : Size of datafile is: 32453700 Should be: 32376944
error : Wrong bytesec: 0-0-0 at linkstart: 32453660
根據(jù)提示,是data文件owner問題,一看果然是root,給他mysql,解決.
chown -R mysql.mysql /var/lib/mysql
3.運(yùn)行完修復(fù),提示有個(gè)表Error: Incorrect information in file: ‘./aaa/bbb.frm'.
嘗試各種修復(fù)方式均未成功.Google了一下,發(fā)現(xiàn).frm存儲(chǔ)的只是表結(jié)構(gòu).表結(jié)構(gòu)?那嘗試一下用相同表結(jié)構(gòu)的文件覆蓋.刪掉bbb.frm,隨便復(fù)制一個(gè)庫下的ccc.frm,改名為bbb.frm.一看,搞定!
一句話,多備份才是王道,mysql的磁盤轉(zhuǎn)移總會(huì)遇到各種各樣問題.
相關(guān)文章
mysql8新特性之binlog_expire_logs_seconds淺析
MySQL8中新增了不少新特性,這些特性提高了數(shù)據(jù)庫的安全性和性能,使數(shù)據(jù)庫管理員能夠更靈活地進(jìn)行賬戶管理工作,下面這篇文章主要給大家介紹了關(guān)于mysql8新特性之binlog_expire_logs_seconds的相關(guān)資料,需要的朋友可以參考下2023-02-02
MySQL中利用索引對(duì)數(shù)據(jù)進(jìn)行排序的基礎(chǔ)教程
這篇文章主要介紹了MySQL中利用索引對(duì)數(shù)據(jù)進(jìn)行排序的基礎(chǔ)教程,需要的朋友可以參考下2015-11-11
MySQL中觸發(fā)器入門簡(jiǎn)單實(shí)例與介紹
本文章來mysql初學(xué)者介紹在mysql怎么創(chuàng)建觸發(fā)器及觸發(fā)器在mysql執(zhí)行順序,下面我來給大家詳細(xì)介紹2013-08-08
MySQL數(shù)據(jù)庫中null的知識(shí)點(diǎn)總結(jié)
在本篇文章里小編給大家整理的是關(guān)于MySQL數(shù)據(jù)庫null的知識(shí)點(diǎn)以及相關(guān)實(shí)例,需要的朋友們可以學(xué)習(xí)下。2019-10-10
MySql中 is Null段判斷無效和IFNULL()失效的解決方案
這篇文章主要介紹了MySql中 is Null段判斷無效和IFNULL()失效的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06

