隨筆 - 154  文章 - 60  trackbacks - 0
          <2008年4月>
          303112345
          6789101112
          13141516171819
          20212223242526
          27282930123
          45678910

          聲明:

          該blog是為了收集資料,認識朋友,學(xué)習(xí)、提高技術(shù),所以本blog的內(nèi)容除非聲明,否則一律為轉(zhuǎn)載!!

          感謝那些公開自己技術(shù)成果的高人們!!!

          支持開源,尊重他人的勞動!!

          常用鏈接

          留言簿(3)

          隨筆分類(148)

          隨筆檔案(143)

          收藏夾(2)

          其他

          學(xué)習(xí)(技術(shù))

          觀察思考(非技術(shù))

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          原文地址:http://x.discuz.net/183161/viewspace-16039.html


          由于 MySQL 本身的讀寫及鎖定機制等方面的原因,與一些其他數(shù)據(jù)庫軟件一樣,在特殊情況下的極為頻繁讀寫時,或在服務(wù)器掉電、死機等情況下,相關(guān)的數(shù)據(jù)文件可能會發(fā)生被損壞的情況,通常可以采用以下的方式加以解決。
          .l0E-UQyEO0SupeSite/X-Space官方站8Eh-S:Cn Nx gs(N
          一:repair.php 修復(fù)工具
          o^7rU V-uQ0Discuz! 自帶了一個使用 PHP 編寫的數(shù)據(jù)表修復(fù)工具 repair.php,虛擬主機用戶也可使用。該工具位于軟件包的 ./utilities 目錄中,使用時需要上傳到服務(wù)器上論壇目錄(注意不要連 ./utilities 目錄一起上傳,否則無法運行),
          Sj;btNK9u0
          1X"|4m&i?6Z v-NmV0upload.jpgSupeSite/X-Space官方站]] Jj.G"^
          在瀏覽器運行后點擊下面的鏈接即可
          Rx(m-qy0SupeSite/X-Space官方站7C3K{~ n%E)c-G"WB
          run.jpgSupeSite/X-Space官方站_N'C _b
          SupeSite/X-Space官方站q4l8l q u C%[K
          修復(fù)以后如果出現(xiàn)下面的畫面表示修復(fù)成功!!!SupeSite/X-Space官方站G iv`*X

          aM@5A z n'\ ez*A0SupeSite/X-Space官方站0L `C ZQF0s^-Y
          result.jpg
          'qb _H!Q4t)['^/e0這個工具能修復(fù)大多數(shù)常見的數(shù)據(jù)庫錯誤,尤其是錯誤號為 126、127 的錯誤,對 145 錯誤也可修復(fù),同時能對數(shù)據(jù)表在修復(fù)之后進行優(yōu)化。如果一次修復(fù)不成功,可以嘗試多次,或?qū)?shù)據(jù)庫重啟后再試。
          _~yFxm0
          3P` w:e G9S,t2m)V0SupeSite/X-Space官方站G)Y+N$|:p[J-|*{I&c7e
          SupeSite/X-Space官方站[@N*AfS
          二 :myisamchk 修復(fù)工具SupeSite/X-Space官方站E)?E/?F5S&o
          MySQL 自帶了專門用戶數(shù)據(jù)表檢查和修復(fù)的工具——myisamchk,當(dāng) repair.php 多次修復(fù)均無法成功時,可以在服務(wù)器終端使用 myisamchk 進行修復(fù)。在 MySQL 的程序文件目錄(見《數(shù)據(jù)備份與恢復(fù)》中的說明)可以找到這個工具。 SupeSite/X-Space官方站+k[n+Vq KYW

          J6g;oB%fy;gG@0常用的修復(fù)命令為 myisamchk -r 數(shù)據(jù)文件目錄/數(shù)據(jù)表名.MYI,如果 -r 參數(shù)不能奏效,可以先把數(shù)據(jù)文件備份(備份可使用直接文件復(fù)制的方式,詳見《數(shù)據(jù)備份與恢復(fù)》中的說明)后使用 -o 參數(shù),如果-o還不可以的話,就使用-f參數(shù),如果還是無法修復(fù),只有使用你的備份文件來恢復(fù)數(shù)據(jù)了!什么??你沒有備份文件那你就坐到那里哭吧!!開個玩笑,但是網(wǎng)站及時的做備份確實是很重要的,尤其當(dāng)有一定的規(guī)模以后,建議每天都做備份!!SupeSite/X-Space官方站'^9I J n1?8f!j&w xp:}
          下面說一下具體的步驟:SupeSite/X-Space官方站)[#R"^w}
          1.SupeSite/X-Space官方站r RG'^7^-t+XuO

          gEVu7B} jK0cmd.jpgSupeSite/X-Space官方站r sFS(V.?rH
          2.更改當(dāng)前目錄到mysql/bin下面,一般情況下只有在這個下面才能運行myisamchk命令
          ;E-}&xJ ^n-V2Q9W#T0SupeSite/X-Space官方站L5I&ry R4y:j#}+w$[
          SupeSite/X-Space官方站-er5f/?8EB'q0m`
          myisamchk.jpgSupeSite/X-Space官方站GN,}7f5C*V
          3.修復(fù)的結(jié)果,如果修復(fù)后的情況都如下圖所示的話,你就可以了,成功了,繼續(xù)開啟你的網(wǎng)站,運行吧!!SupeSite/X-Space官方站UncL.f4f+X t

          _0O"}}&uY0}0|0SupeSite/X-Space官方站p'EwS6@#J L
          theresult.jpgSupeSite/X-Space官方站7u'?5U ~GK+Z6rU1E(t
          4.別忘了啟動你的mysql,要不你的網(wǎng)站還是運行不起來.
          Dr3C1E}BR)e"X)G0SupeSite/X-Space官方站Kl.J:n4v+Ha
          SupeSite/X-Space官方站x$[/Vh^
          startmysql.jpg
          ](e1O{+B5E-s1}!f0ps:下面給的一個是linux下面的修復(fù)方法,和上面的基本相同.只是linux下面關(guān)閉和啟動mysql的方法和windows的不同.一般情況下linux用
          O3o0].S2EE S0SupeSite/X-Space官方站@7Dy o!R G$u Y
          CODE:
          /etc/init.d/mysql stop  service mysqld stop /etc/init.d/mysql start service mysqld start
          來關(guān)閉和啟動mysql
          f^Zi!y3v1S0
          nB\aV&N0SupeSite/X-Space官方站"x!@S"CH0c:`%b:S
          linux.jpg
          &j%r.O8~.^E w0o1R0
          {&y7`'P9s"TG0另外 MySQL 官方文檔中還提供了針對上面操作均無法奏效時的特殊辦法,如先清空重建數(shù)據(jù)表,然后再用備份的數(shù)據(jù)文件覆蓋等,這種特別復(fù)雜的情況用戶通常不會碰到,因此這里不再做過于深入的研究。 SupeSite/X-Space官方站kH,M:It.s3nD
          SupeSite/X-Space官方站ry O:D.x A|
          三:數(shù)據(jù)表經(jīng)常性損壞的解決方法SupeSite/X-Space官方站W"Y$}y)B3O^

          #DJu*ET\ AN5N0--------------------------------------------------------------------------------SupeSite/X-Space官方站 U3m]5uOD-O6kD
          SupeSite/X-Space官方站%|gj%s8G8fr6j
          首先請確認在服務(wù)器硬件不存在問題(如內(nèi)存工作不穩(wěn)定、散熱條件不好等),且使用中的操作系統(tǒng)版本也沒有相關(guān)的 BUG 報告或升級補丁。這種情況下,如果數(shù)據(jù)庫仍出現(xiàn)經(jīng)常性的損壞,請檢查是否 MySQL 的編譯方式或參數(shù)存在問題。通常情況下使用官方提供的編譯好的版本是比較穩(wěn)定的,可以長期使用。如果您鐘愛自行編譯相關(guān)程序,請確認您的語言編譯器(如 gcc)和配置的相關(guān)參數(shù)沒有導(dǎo)致不穩(wěn)定的因素。同時,磁盤分區(qū)滿也可能是導(dǎo)致數(shù)據(jù)表經(jīng)常性損壞的原因。網(wǎng)上提供了一些問題的處理方法(英文),需要時可多參考,并針對您的具體服務(wù)器環(huán)境制定解決方案。

          posted on 2008-04-25 09:46 lk 閱讀(470) 評論(0)  編輯  收藏 所屬分類: DB
          主站蜘蛛池模板: 道孚县| 曲麻莱县| 乐陵市| 翁牛特旗| 唐河县| 武义县| 永顺县| 简阳市| 延庆县| 芦溪县| 资兴市| 云霄县| 崇阳县| 龙里县| 什邡市| 梅州市| 弥渡县| 昌都县| 平江县| 互助| 松潘县| 抚远县| 延边| 桂阳县| 齐齐哈尔市| 乾安县| 高雄市| 海口市| 临泽县| 海安县| 平塘县| 藁城市| 松溪县| 鲁山县| 会宁县| 大同县| 临漳县| 互助| 托里县| 宁河县| 河西区|