WordPress 默認表前綴 wp_ 易受自動化攻擊腳本掃描。修改為隨機前綴(如 wpjam_)可顯著降低 SQL 注入、自動化利用風險。本文提供完整操作流程:備份 → 修改 wp-config.php → 重命名 11 張核心表 → 更新 wp_options、wp_usermeta 內部引用 → 驗證。
mysqldump -u root -p --single-transaction --routines --triggers wpdb > wpdb_backup_$(date +%F).sql.maintenance 文件或啟用維護插件。_ 結尾(如 wpjam_)。$table_prefix = 'wpjam_'; // 原為 'wp_'
RENAME TABLE `wp_commentmeta` TO `wpjam_commentmeta`;
RENAME TABLE `wp_comments` TO `wpjam_comments`;
RENAME TABLE `wp_links` TO `wpjam_links`;
RENAME TABLE `wp_options` TO `wpjam_options`;
RENAME TABLE `wp_postmeta` TO `wpjam_postmeta`;
RENAME TABLE `wp_posts` TO `wpjam_posts`;
RENAME TABLE `wp_terms` TO `wpjam_terms`;
RENAME TABLE `wp_term_relationships` TO `wpjam_term_relationships`;
RENAME TABLE `wp_term_taxonomy` TO `wpjam_term_taxonomy`;
RENAME TABLE `wp_usermeta` TO `wpjam_usermeta`;
RENAME TABLE `wp_users` TO `wpjam_users`;
若有插件創建額外表,按相同規則手動補充重命名。
UPDATE `wpjam_options`
SET `option_name` = REPLACE(`option_name`, 'wp_', 'wpjam_')
WHERE `option_name` LIKE 'wp_%';
涉及鍵:wp_user_roles、wp_dashboard_quick_press_last_post_id 等。
UPDATE `wpjam_usermeta`
SET `meta_key` = REPLACE(`meta_key`, 'wp_', 'wpjam_')
WHERE `meta_key` LIKE 'wp_%';
涉及鍵:wp_capabilities、wp_user_level、wp_dashboard_quick_press_last_post_id 等。
可將上述 SQL 封裝為 Shell/Python 腳本,參數化新前綴,實現一鍵遷移,減少人為錯誤。