如何修改WordPress数据库的前缀?

  • 24

数据库对于WordPress网站来说就像大脑对于人一样重要。因为WordPress网站所有的信息都是存在那里面的,所以也成为了黑客攻击的首要目标。黑客会运行一些代码去自动执行SQL注入攻击。然而,许多人在安装WordPress的时候忘记去修改数据表前缀了,这就给了黑客可趁之机,让他们可以通过默认的前缀 wp_ 对数据库进行大量的攻击。保护你的数据库最好的方法就是在安装WordPress的时候,将数据表名的前缀修改了,对于新建站来说这很简单。但是如果你的网站已经在运行中了,那么修改数据表前缀就会稍微麻烦一些了。

1)准备工作

在进行操作之前,建议先把WordPress网站的数据库进行备份。网站的日常备份非常重要,推荐使用BackupBuddy插件来进行自动化的备份。接下来,我们建议你将网站暂时切换成维护状态。

2)在wp-config.php中修改数据表前缀

打开WordPress网站根目录的wp-config.php文件,将表前缀从 wp_ 改成其他的,比如 wp_a123456_。

那么这行代码看起来就是这样的:

$table_prefix = 'wp_a123456_';

注意:表前缀只能由数字、字母和下划线组成。

3)修改所有数据库表名

你需要登录数据库(一般通过phpMyAdmin登录),然后把表名的前缀改成我们刚刚在wp-config.php里定义的。如果你使用的是带cPanel的WordPress主机,那么你可以在cPanel里找到phpMyAdmin的链接。

WordPress默认的表一共有12个,手动一个一个修改的话会比较麻烦。

如何修改WordPress数据库的前缀?

所以,为了操作进行的更快更有效率,我们提供了一个SQL查询语句。你可以把下面的代码复制到 SQL 的输入框中,并点击“执行”按钮。

RENAME table `wp_commentmeta` TO `wp_a123456_commentmeta`;
RENAME table `wp_comments` TO `wp_a123456_comments`;
RENAME table `wp_links` TO `wp_a123456_links`;
RENAME table `wp_options` TO `wp_a123456_options`;
RENAME table `wp_postmeta` TO `wp_a123456_postmeta`;
RENAME table `wp_posts` TO `wp_a123456_posts`;
RENAME table `wp_terms` TO `wp_a123456_terms`;
RENAME table `wp_termmeta` TO `wp_a123456_termmeta`;
RENAME table `wp_term_relationships` TO `wp_a123456_term_relationships`;
RENAME table `wp_term_taxonomy` TO `wp_a123456_term_taxonomy`;
RENAME table `wp_usermeta` TO `wp_a123456_usermeta`;
RENAME table `wp_users` TO `wp_a123456_users`;

如果你安装的其他插件也在数据库里创建了数据表,那就把这些表都添加进去。我们的宗旨是把所有数据表的前缀都改掉。

4)修改Options表

我们需要查询一下 options 表看看有哪些字段使用了wp_作为前缀,然后将它们都替换掉。为了方便查询,使用下面的查询语句:

SELECT * FROM `wp_a123456_options` WHERE `option_name` LIKE '%wp_%'

你会看到返回了很多条结果,把结果中的wp_一个一个修改掉。

5)修改UserMeta表

接下来,我们需要在usermeta表中查询哪些字段使用了wp_作为前缀,然后进行替换。使用下面的SQL语句进行查询:

SELECT * FROM `wp_a123456_usermeta` WHERE `meta_key` LIKE '%wp_%

根据你安装的插件数量不同,返回的查询结果数量也不同。挨个把wp_改成新的前缀。

6)备份&完成

完成以上操作,你就可以准备测试网站了。如果你按照上面的步骤都做对了,那么网站应该运行良好,没有任何问题。然后再对数据库做个备份,以防万一。

  • 本文由 发表于 2023年9月21日
评论  0  访客  0

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: