將以下代碼複製到記事本中然後保存為 db_best.php 文件,修改好相應數據庫信息後上傳至網站然後使用瀏覽器直接訪問該腳本即可一鍵優化數據庫,不過由於一次性執行多個 sql 查詢,所以該腳本訪問時響應速度可能會比較長,優化成功後會顯示 Done 。 (PS:優化前記得備份數據庫以防萬一。)

相關文章:WordPress 數據庫結構説明

PHP

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26
<?php

//WordPress 數據庫優化腳本 by weixiaoduo.com

$hostname_blog = "localhost";//設定數據庫主機,同 wp-config.php

$database_blog = "WordPress";//設定數據庫名,同 wp-config.php

$username_blog = "root";//設定數據庫用户名,同 wp-config.php

$password_blog = "";//設定數據庫密碼,同 wp-config.php

$blog = mysql_pconnect($hostname_blog, $username_blog, $password_blog) or trigger_error(mysql_error(),E_USER_ERROR);

mysql_select_db($database_blog, $blog);

mysql_query('DELETE FROM wp_posts WHERE post_type = "revision"');

mysql_query('DELETE FROM wp_postmeta WHERE meta_key = "_edit_lock"');

mysql_query('DELETE FROM wp_postmeta WHERE meta_key = "_edit_last"');

mysql_query('DELETE FROM wp_commentmeta WHERE meta_key LIKE "%trash%"');

mysql_query('DELETE FROM wp_comments WHERE comment_approved = "trash"');

mysql_query('DELETE FROM wp_options WHERE option_name REGEXP "_transient_"');

mysql_query('DELETE FROM wp_postmeta WHERE meta_key = 『_wp_attached_file』');

mysql_query('DELETE FROM wp_postmeta WHERE meta_key = 『_wp_attachment_metadata』');

mysql_query("delete from wp_posts

where (post_status='auto-draft' or post_status='inherit')

and post_type='post'");

$tablelist = mysql_query("SHOW TABLES");

while($checklist = mysql_fetch_array($tablelist)) {

       $optimization=mysql_query("OPTIMIZE TABLE `$checklist[0]`");

}echo 'Done';

  

//ps 記得修改數據庫前綴~

//使用時將腳本上傳至網站任意目錄後並且通過瀏覽器訪問即可一鍵優化 wordprsss 數據庫。

 

2015-12-29T16:40:30+08:00發表於:2015-12-29|WordPress|