在過去的十年中,MySQL已經成為廣受歡迎的數據庫,而WordPress博客使用的是MySQL數據庫,雖然使用插件可以解決一些問題,但是實現某些特殊任務的時候,在PHPMyAdmin中執行SQL語句是最簡潔的方法,這裡就總結八個有用的WordPress系統的SQL語句,用於解決一些實際碰到的問題。
1、創建備份數據庫
備份數據庫是首先要做的事情,只需要通過以下方法就可以簡單備份數據庫:
登錄PHPMyAdmin後。選擇你的WordPress數據庫,然後點擊“導出”按鈕,選擇一種壓縮方式(可以使用gzip)並單擊“執行”按鈕,當浏覽器提示是否下載的時候,點“是”,將數據庫文件下載到本地。
2、批量刪除文章修訂
WordPress2.6以後的版本增加了一個Post revisions功能,雖然有點用,但文章修訂增加了你數據庫的大小,我們可以選擇批量刪除。
登錄PHPMyAdmin後執行下面的SQL語句即可批量刪除。
DELETE FROM wp_posts WHERE post_type = "revision";
3、批量刪除垃圾評論
一個真實的故事是,我的一個朋友在網上建立了一個博客,有次他花了幾天時間外出度假,沒有上網,當他回來的時候,登錄自己的博客,看到有5000多條評論等待審核,當然,大多數都是垃圾評論,要手動刪除這些評論要花大量時間,因此我們可以使用以下辦法。
登錄PHPMyAdmin後執行下面的SQL語句。
DELETE from wp_comments WHERE comment_approved = '0';
要小心,雖然這種解決方案對於處理數百萬的垃圾平郵非常有用,但是也會清除未經批准的評論,因此最好還是安裝使用Akismet來對付垃圾評論。
4、修改文章屬性
你安裝WordPress後,admin賬戶就創建了,不少人都錯誤的使用這個帳號來寫博客,直到他們認識到,這並不是個人帳號。
解決的方法,每篇文章修改作者屬性需要大量的時間,下面的這個SQL語句可以幫你快速完成這個功能。
首先你要找到你正確的用戶名,使用下面的SQL語句可以找到你的用戶ID號。
SELECT ID, display_name FROM wp_users;
假設這個ID為NEW_AUTHOR_ID,而管理員admin的ID為OLD_AUTHOR_ID,接著,運行下面的SQL語句。
UPDATE wp_posts SET post_author=NEW_AUTHOR_ID WHERE post_author=OLD_AUTHOR_ID;
5、手動重設密碼
很多人為了保護自己的博客不被人黑掉,使用了很復雜的密碼,這雖然是一件好事,但也經常會發生遺忘管理員密碼的事情。
當然,通過電子郵件可以發送給你WordPress重設密碼的鏈接,但如果你無法訪問你的郵件地址,那麼就只好使用下面的SQL語句來重設你的密碼了。
UPDATE wp_users SET user_pass = MD5('PASSWord') WHERE wp_users.user_login ='admin' LIMIT 1;
MD5是MySQL內置的哈希函數,用於將密碼轉換為散列值。
6、更改WordPress的域名
你可能有時候會想要更改你博客的域名,但是WordPress會將你的域名存儲在數據庫中,因此你要使用下面的SQL語句來修改。
UPDATE wp_options SET option_value = replace(option_value, 'http://www.oldsite.com', 'http://www.newsite.com') WHERE option_name = 'home' OR option_name = 'siteurl';
接著,你還要使用下面的SQL將文章的GUID也進行修改。
UPDATE wp_posts SET guid = replace(guid, 'http://www.oldsite.com','http://www.newsite.com');
最後,使用下面的語句將文章裡所有舊域名替換為新域名。
UPDATE wp_posts SET post_content = replace(post_content, 'http://www.oldsite.com', 'http://www.newsite.com');
7、顯示SQL查詢數量
在你有話博客性能的時候,了解到查詢數據庫的數量是非常重要的,為了減少數據庫查詢,我們需要知道在一個頁面上到底有多少個查詢。
這一次,不需要登錄phpMyAdmin了,你只需要修改footer.PHP文件,在文件結尾增加下面幾行代碼即可。
以下為引用的內容:
<?PHP if (is_user_logged_in()) { ?>
<?php echo get_num_queries(); ?> querIEs in <?PHP timer_stop(1); ?> seconds.
<?PHP } ?>
8、恢復你的WordPress數據庫
當你的數據庫因為某些原因(黑客或者升級錯誤)被損壞或者丟失了,如果你有備份的話,那可以恢復你的WordPress數據庫。
登錄PHPMyAdmin,選擇你的WordPress數據庫,點“導入”按鈕,點“浏覽”按鈕,然後從你的硬盤選擇備份文件,點“執行”按鈕就可以將數據庫導入。
如果順利的話,你的WordPress功能將會恢復正常。