修改 WordPress 数据库表前缀

这类文章很多,关键是要注意多备份数据库,如果中间搞错了,还有回旋的余地!

假设将表前缀由 wp_ 修改为 yjw_,使用数据库管理工具 adminer或者phpmyadmin,大致以下几个步骤:

1、修改数据表名字

执行以下SQL命令

ALTER TABLE `wp_commentmeta` RENAME TO `yjw_commentmeta`;
ALTER TABLE `wp_comments` RENAME TO `yjw_comments`;
ALTER TABLE `wp_links` RENAME TO `yjw_links`;
ALTER TABLE `wp_options` RENAME TO `yjw_options`;
ALTER TABLE `wp_postmeta` RENAME TO `yjw_postmeta`;
ALTER TABLE `wp_posts` RENAME TO `yjw_posts`;
ALTER TABLE `wp_terms` RENAME TO `yjw_terms`;
ALTER TABLE `wp_term_relationships` RENAME TO `yjw_term_relationships`;
ALTER TABLE `wp_term_taxonomy` RENAME TO `yjw_term_taxonomy`;
ALTER TABLE `wp_usermeta` RENAME TO `yjw_usermeta`;
ALTER TABLE `wp_users` RENAME TO `yjw_users`;

2、在 wp-config.php 修改数据库前缀

打开你的 wp-config.php 文件,把数据库前缀 wp_ 修改库 yjw_

$table_prefix  = 'yjw_';

3、修改 options、usermeta 表中的数据

一是为了修改表前缀,二是为了解决后台登录提示“您没有足够的权限访问该页面”。

update yjw_options set option_name = replace(option_name,'wp_user_roles','yjw_user_roles');
update yjw_usermeta set meta_key = replace(meta_key,'wp_capabilities','yjw_capabilities');
update yjw_usermeta set meta_key = replace(meta_key,'wp_user_level','yjw_user_level');
update yjw_usermeta set meta_key = replace(meta_key,'wp_capabilities','yjw_user-settings');
update yjw_usermeta set meta_key = replace(meta_key,'wp_user_level','yjw_user-settings-time');
update yjw_usermeta set meta_key = replace(meta_key,'wp_user_level','yjw_dashboard_quick_press_last_post_id');

4、收尾工作

搜索一下 wp_ ,看看还有没有漏掉没修改的,举个例子

update 'hwp_usermeta set meta_key = replace(meta_key,'wp_user-settings',''hwp_user-settings');
update 'hwp_usermeta set meta_key = replace(meta_key,'wp_user-settings-time',''hwp_user-settings-time');

至此结束,首要是备份,关键是细心!