网络营销电子商务研究中心

网络营销电子商务研究中心 (https://www.0058.net/index.php)
-   WordPress (https://www.0058.net/forumdisplay.php?f=68)
-   -   wordpress 安全正确更改数据库表前缀 (https://www.0058.net/showthread.php?t=5192)

Jerimiah 2015-06-14 06:59 AM

wordpress 安全正确更改数据库表前缀
 
之前用了默认的数据库前缀做网站,等网站做好了,出于安全角度考虑的时候,就不想要使用默认的数据库前缀,所以就想要更改数据库表的前缀。

替换 WordPress 默认数据库前缀的办法有很多。但在这里我认为比较好的,可以让你完美地替换掉 WordPress 的数据库前缀。

更改 WordPress 数据库表名前缀步骤:(wordpress版本3.0.1)

以下更改数据库前缀教程只需要在phpmyadmin运行十几个sql命令即可。

首先做的就是更改十个表的前缀,这个简单,命令如下:

ALTER TABLE wp_commentmeta RENAME TO xzy_commentmeta;

ALTER TABLE wp_comments RENAME TO xzy_comments;

ALTER TABLE wp_options RENAME TO xzy_options;

ALTER TABLE wp_posts RENAME TO xzy_posts;

ALTER TABLE wp_postmeta RENAME TO xzy_postmeta;

ALTER TABLE wp_users RENAME TO xzy_users;

ALTER TABLE wp_usermeta RENAME TO xzy_usermeta;

ALTER TABLE wp_links RENAME TO xzy_links;

ALTER TABLE wp_terms RENAME TO xzy_terms;

ALTER TABLE wp_term_taxonomy RENAME TO xzy_term_taxonomy;

ALTER TABLE wp_term_relationships RENAME TO xzy_term_relationships;

上面的命令就是将默认的前缀wp更改为xzy_,如果你想更改成其他的前缀了,只需要把xzy_替换为你喜欢的就可以了。

然后需要在wp-config.php中找到

$table_prefix = 'wp_';

将它替换为

$table_prefix = 'xzy_';

本以为这样就完成了,但是后台发现登陆不上去了,于是再次查看数据库,发现options表中有项wp_user_roles,还有 usermeta有以下五项也需要修改:

wp_capabilities

wp_user_level

wp_user-settings

wp_user-settings-time

wp_dashboard_quick_press_last_post_id

这四项中autosave_draft_ids是日志自动保存,user_roles和user_level是权限方面的,那个 capabilities搞不懂是什么,但直觉告诉我也需要修改,所以继续在sql下运行以下命令:

update xzy_options set option_name = replace(option_name,'wp_user_roles','xzy_user_roles');

update xzy_usermeta set meta_key = replace(meta_key,'wp_capabilities','xzy_capabilities');

update xzy_usermeta set meta_key = replace(meta_key,'wp_user_level','xzy_user_level');

update xzy_usermeta set meta_key = replace(meta_key,'wp_capabilities','xzy_user-settings');

update xzy_usermeta set meta_key = replace(meta_key,'wp_user_level','xzy_user-settings-time');

update xzy_usermeta set meta_key = replace(meta_key,'wp_user_level','xzy_dashboard_quick_press_last_post_id');

这样,我们的目的也达到了,我可以保证,使用此方法可以100%保证对数据库没什么伤害,尽量不要使用编辑器等工具直接替换wp_,因为有些数据库中插件名,绝对地址,文章中都可能存在wp_这个关键词。

现在我的网站已经成功将wp_改为了xzy_,一切都正常,插件也可以不需要关闭!


All times are GMT +8. The time now is 11:07 AM.

Powered by vBulletin Version 3.8.7
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.