程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> 如何修復崩潰的WordPress數據庫表?

如何修復崩潰的WordPress數據庫表?

編輯:MySQL綜合教程

如何修復崩潰的WordPress數據庫表?


Bkjia精選譯文】WordPress數據庫可能會在各種情形下遇到故障和損壞。它遇到的常見問題之一就是“數據庫崩潰”。如果出現這種情況,你可以在WordPress錯誤日志中找到下列錯誤信息:

WordPress database error Table './my_home/wp_posts' is marked as crashed and last (automatic?) repair failed for query SELECT post_date_gmt FROM wp_posts WHERE post_status = 'publish' AND post_type IN ('post', 'page', 'attachment') ORDER BY post_date_gmt DESC LIMIT 1 made by require('wp-blog-header.php'), wp, WP->main, WP->send_headers, get_lastpostmodified, get_lastpostdate, _get_last_post_time

這類數據庫表崩潰的症狀多種多樣。你的WordPress博客可能出現不一樣的異常,這取決於崩潰的是哪個表。如果崩潰的表是裡面含有一系列博文的“wp_posts”表,你就看不到博客裡面的任何帖子。Xmodulo網站就在上個周末遇到了這種數據庫崩潰:

Xmodulo的WordPress博客眼下由MySQL運行,所以我在本教程中將著重介紹MySQL。

MySQL表為何會崩潰?

崩潰的原因可能不一樣,但通常當mysqld或mysqld運行在其中的主機在數據庫更新過程中被強行關閉時,就會引發數據庫崩潰。在教程的其余部分,我將介紹如何修復崩潰的WordPress MySQL數據庫表。

第一種方法

如果你使用共享的主機托管服務,通常可以訪問Cpanel,這讓你可以通過Cpanel Web界面修復數據庫。

登錄進入到Cpanel,點擊“Databases”數據庫)部分下面的“MySQL Databases”MySQL數據庫)。

在MySQL Databases頁面上,你會在“Modify Databases”修改數據庫)部分下面找到“Repair DB”修復數據庫)。

選擇含有崩潰表的那個數據庫,點擊“Repair DB”修復數據庫)按鈕。如果修復成功,你會看到每個表的狀態顯示為“OK”。

  1. my_database.wp_oiopub_tracker_visits OK  
  2. my_database.wp_options OK  
  3. my_database.wp_postmeta OK  
  4. my_database.wp_posts  
  5. error : Keyblock size at page 13001728 is not correct. Block length: 532 key length: 2  
  6. Error : Incorrect key file for table './my_database/wp_posts.MYI'; try to repair it  
  7. error : Corrupt  
  8. ---------  
  9. After repair:  
  10. ----  
  11. my_database.wp_oiopub_tracker_visits OK  
  12. my_database.wp_options OK  
  13. my_database.wp_postmeta OK  
  14. my_database.wp_posts OK  
  15. my_database.wp_sharebar OK  
  16. my_database.wp_term_relationships OK 

第二種方法

如果你在MySQL服務器運行在上面的主機比如VPS)上享用根目錄訪問權,就可以試一試命令行接口,修復崩潰的數據庫表。

就MyISAM類型的數據庫而言,你可以使用名為myisamchk的命令行實用工具,修復崩潰的表。該實用工具隨MySQL服務器一同安裝。

首先,停止MySQL服務器。

  1. $ sudo service mysql stop (Debian/Ubuntu)  
  2. $ sudo service mysqld stop (CentOS/RHEL)  
  3. $ sudo systemctl stop mysqld.service (Fedora) 

然後使用這個命令修復某一個表。

  1. $ cd /var/lib/  
  2. $ sudo myisamchk -r -v -f mysql/<database_name>/<table_name> 

最後,再次啟動MySQL服務器。

你平時有沒有遇到過數據庫崩潰問題,或者是WordPress數據庫出現的其他任何問題?你是否定期備份自己的WordPress數據庫表?歡迎告訴我們你用什麼方法來解決這個問題、維護數據庫。
 

英文:http://xmodulo.com/2014/06/repair-crashed-wordpress-database-table.html

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved