以前觉得改数据库前缀很简单,直接在数据库文件夹中修改文件名字即可,在Windows服务器非常方便。但我错了,改完发现网站崩了,得重装,而我的备份文件还是昨天的,真是:听我说谢谢你!
为什么要更改 WordPress 数据库前缀?
WordPress 数据库就像 WordPress 网站的心脏,它存储了所有信息,因此您需要保护它免受黑客和垃圾邮件发送者的攻击,他们可能会运行自动化代码进行 SQL 注入。
默认情况下,WordPress使用以"wp_"为前缀的数据库表,许多人在安装过程中没有更改数据库前缀,这在一定程度上增加了潜在的风险,这使得黑客更容易通过针对默认前缀 wp_ 来发动大规模攻击。
为了避免这种情况,您可以通过更改数据库前缀来保护您的数据库,更改前缀是一种安全性措施,可以增加网站的安全性。手动修改会比较繁琐,使用 Brozzme DB Prefix 插件则非常简单。更改前缀只需几秒钟。
当然,这对于一些强迫症患者来说,也是相当治愈。
![Brozzme DB Prefix 插件](https://www.nzonex.com/wp-content/themes/beginlts/img/blank.gif)
更改之前需要注意什么?
1、备份数据库
在进行任何数据库更改之前,务必备份整个WordPress数据库。这是为了确保你可以在出现问题时还原网站。确保在使用此工具之前已备份数据库。
2、备份配置文件
打开网站根目录下的 wp-config.php 文件,你会找到一个名为 $table_prefix 的变量,它定义了数据库表的前缀,这个文件一般就2kb,平常也要备份一份。
3、验证权限
wp-config.php 在您的服务器上是可写的。
数据库 ALTER 权限已启用。
通常是不需要验证,一般都是有这权限。
![数据库 ALTER 权限](https://www.nzonex.com/wp-content/themes/beginlts/img/blank.gif)
如果更改过程失败,我该怎么办?
比较 wp-config.php 和 phpmyAdmin 中的前缀,具体取决于情况:
手动更改 wp-config.php 中的 $table_prefix 值。
删除所有表并在 phpmyAdmin 中导入之前的备份。
为什么我不能手动完成?
当然可以,但需要修改许多地方才能使其工作。不仅需要修改表名。
![手动修改WordPress数据库前缀](https://www.nzonex.com/wp-content/themes/beginlts/img/blank.gif)
以下是要更改的完整列表:
- 表名
- 表选项:{old_prefix}user_roles 选项名
- 表 usermeta,对于每个已注册用户,{old_prefix}capabilities 和 {old_prefix}user_level,选项名
- 如果存在,您还需要修改 {old_prefix}dashboard_quick_press_last_post_id 选项名
改完前缀还要改字段值,options里面的 option_name 字段值,和usermeta里面的meta_key字段值。
update wpnew_options set option_name = replace(option_name,'wp_','wpnew_');
update wpnew_usermeta set meta_key = replace(meta_key,'wp_',wpnew_');
这挺繁琐的,还是用插件解决吧!
下载安装使用
您可以从 WordPress 后台搜索安装 Brozzme DB Prefix 插件,安装后启用。
也可以手动下载压缩包,上传到网站插件目录并解压,后台插件页启用。
手动下载:https://www.nzonex.com/go/brozzme-db-prefix(110kb)
在 WordPress 后台,转到“工具”>“DB PREFIX”。在“表前缀”字段中输入您想要使用的表前缀。点击“Change DB Prefix”按钮即可。插件将自动将表前缀应用于现有数据库。
前缀不能用特殊字符,可使用所有拉丁字母和数字,以及下划线。
当然除了这个插件外, 也还有其它类似的插件,也是大同小异。
平常不频繁改的话,插件用完即可禁用或删除。一般是不会出什么问题,一键修改就像复制粘贴那么简单,要是改完网站崩了,没有备份怎么办?我深表同情,毕竟我也经常这么干。
![weinxin](https://www.nzonex.com/file/pic/nZoneV.jpg)