一直都有改wordpress数据库前缀的想法,上次重新弄数据库的时候又忘记改了,还是wp_为前缀,看起来总是不舒服,于是今天下午在网上找了很久,发现没一个可以成功,于是就专门把十个表重新研究了下,大概也知道怎么做了,终于测试成功了,但为了完美,还是重新阅读了下sql的基础命令,以前也没学过sql,只能现学了,以下更改数据库前缀教程只需要在phpmyadmin运行十几个sql命令即可,傻瓜式的。
首先做的就是更改十个表的前缀,这个简单,命令如下:
ALTER TABLE wp_comments RENAME TO dianso_comments
ALTER TABLE wp_options RENAME TO dianso_options
ALTER TABLE wp_posts RENAME TO dianso_posts
ALTER TABLE wp_postmeta RENAME TO dianso_postmeta
ALTER TABLE wp_users RENAME TO dianso_users
ALTER TABLE wp_usermeta RENAME TO dianso_usermeta
ALTER TABLE wp_links RENAME TO dianso_links
ALTER TABLE wp_terms RENAME TO dianso_terms
ALTER TABLE wp_term_taxonomy RENAME TO dianso_term_taxonomy
ALTER TABLE wp_term_relationships RENAME TO dianso_term_relationships
上面的命令就是将默认的前缀wp更改为dianso,如果你想更改前缀了,只需要把dianso替换为你喜欢的就可以。
然后需要在wp-config.php中找到
$table_prefix = ‘wp_’;
将它替换为
$table_prefix = ‘dianso_’;
本以为这样就完成了,但是后台发现登陆不上去了,于是再次查看数据库,发现options表中有项wp_user_roles,还有usermeta有以下三项也需要修改:
wp_autosave_draft_ids
wp_capabilities
wp_user_level
这四项中autosave_draft_ids是日志自动保存,user_roles和user_level是权限方面的,那个capabilities搞不懂是什么,但直觉告诉我也需要修改,所以继续在sql下运行以下命令:
update dianso_options set option_name = replace(option_name,'wp_user_roles','dianso_user_roles')
update dianso_usermeta set meta_key = replace(meta_key,'wp_capabilities','dianso_capabilities')
update dianso_usermeta set meta_key = replace(meta_key,'wp_user_level','dianso_user_level')
update dianso_usermeta set meta_key = replace(meta_key,'wp_autosave_draft_ids','dianso_autosave_draft_ids')
这样,我们的目的也达到了,我可以保证,使用此方法可以100%保证对数据库没什么伤害,尽量不要使用编辑器等工具直接替换wp_,因为有些数据库中插件名,绝对地址,文章中都可能存在wp_这个关键词。
现在我的博客已经成功将wp_改为了dianso_,一切都正常,插件同样不需要关闭!