innodb結(jié)構(gòu)數(shù)據(jù)庫損壞恢復(fù)方法通過備份盤數(shù)據(jù)恢復(fù)數(shù)據(jù)庫,適合普通人員操作 先按http://www.ps-sw.cn/faq/list.asp?unid=753 掛載備份盤 一.windows系統(tǒng) 找到mysql安裝目錄, 如果是我司建站助手安裝,則在D:\soft_php_package\mysql\,將data目錄改名,然后將備份盤中相同路徑下data復(fù)制回來, 再啟動(dòng),如果仍無法啟動(dòng),可嘗試備份一份整個(gè)mysql目錄以后,覆蓋整個(gè)mysql目錄; 如果是自己安裝的mysql,則找到安裝目錄下my.ini文件,用記事本打開該文件,如 basedir="D:/phpStudy/MySQL/" #這里是mysql安裝路徑 datadir="D:/phpStudy/MySQL/data/" #這里是mysql數(shù)據(jù)存放路徑 將data目錄改名,然后將備份盤中相同路徑下data復(fù)制回來,如果仍無法啟動(dòng),可嘗試覆蓋整個(gè)mysql目錄; 如果仍無法啟動(dòng)恢復(fù),可備份數(shù)據(jù),重裝mysql 二.linux系統(tǒng) 如果是我司默認(rèn)安裝wdcp環(huán)境,則在/home/wddata/var,將var目錄改名,然后將備份盤中相同路徑下var復(fù)制回來, cd /home/wddata/ mv var var.bak cp -rfpu /home1/wddata/var /home/wddata/ service mysqld start 如果是自己安裝的mysql,則找到my.cnf文件,如 basedir="/etc/mysql/" #這里是mysql安裝路徑 datadir="/etc/mysql/var/" #這里是mysql數(shù)據(jù)存放路徑 將var目錄改名,然后將備份盤中相同路徑下var復(fù)制回來,如果仍無法啟動(dòng),可嘗試覆蓋整個(gè)mysql目錄 如果仍無法啟動(dòng)恢復(fù),備份好現(xiàn)有mysqldata目錄,再重裝mysql 強(qiáng)烈推薦按以上方案恢復(fù) 以下是專業(yè)技術(shù)人員重建innodb數(shù)據(jù)庫過程參考,非專業(yè)人士請(qǐng)勿嘗試,可能會(huì)造成數(shù)據(jù)丟失!!! 跳過恢復(fù)模式,導(dǎo)出數(shù)據(jù)重建數(shù)據(jù)庫 找到mysql安裝目錄下的my.ini文件,在[mysqld]下一行中添加 innodb_force_recovery = 6 innodb_purge_threads = 0 保存后再啟動(dòng)mysql 在D:\mysql\建立一個(gè)文件,命名db.txt,用記事本打開 將使用innodb結(jié)構(gòu)的數(shù)據(jù)庫名寫入,一行一個(gè) 再在桌面新建立一個(gè)文件,命名dump.bat,用記事本打開復(fù)制以下代碼 echo off cls md D:\deleted\sql for /f %%i in (D:\mysql\db.txt) do ( echo %%i mysqldump -uroot -p密碼 -Q -a --opt --default-character-set=gbk %%i>D:\deleted\sql\%%i-gbk.sql mysqldump -uroot -p密碼 -Q -a --opt --default-character-set=utf8 %%i>D:\deleted\sql\%%i-utf8.sql ) 其中'密碼'改為實(shí)際的mysql密碼 停止服務(wù),去掉my.ini的innodb_force_recovery參數(shù),將data目錄下的ibdata和ib_logfile剪切到其他位置,啟動(dòng)服務(wù) 導(dǎo)入數(shù)據(jù) 新建im.bat echo off cls md D:\deleted\bkup for /f %%i in (D:\mysql\db.txt) do ( echo %%i move /y d:\mysql\data\%%i D:\deleted\bkup\ mysql -uroot -p密碼 -e "create database %%i;" mysql -uroot -p密碼 --default-character-set=utf8 %%i<D:\deleted\sql\%%i-utf8.sql ) 其中'密碼'改為實(shí)際的mysql密碼 linux同理修改my.cnf參數(shù)后,導(dǎo)出數(shù)據(jù),將var目錄下的ibdata和ib_logfile剪切到其他位置,啟動(dòng)服務(wù) 導(dǎo)入數(shù)據(jù)
|
|||||
| >> 相關(guān)文章 | |||||
|
|
|||||
400-028-5800
028-62778877
您好,非正常上班時(shí)間若有緊急技術(shù)問題,請(qǐng)撥總機(jī)后按7號(hào)鍵, 其他問題請(qǐng)?zhí)峤还位蛟谏习鄷r(shí)間聯(lián)系,謝謝支持!