你是否无法登录你的WordPress网站?
有时黑客会通过从数据库中删除你的管理账户来锁住你自己的网站。
在这篇文章中,我们将告诉你如何通过MySQL向WordPress数据库添加一个管理用户,这样你就可以找回你的权限。
为什么要通过MySQL将管理用户添加到WordPress数据库中?
我们曾经遇到过一个问题,一个用户的网站被黑了,他们的管理账户被从数据库中删除了。这就把他们的WordPress网站锁住了,没有任何其他入口。
我们能够通过在WordPress网站上直接创建一个新的管理用户来帮助他们进入他们的网站。我们使用phpMyAdmin做到了这一点,这是一个基于网络的工具,允许你使用你的网络浏览器来管理MySQL数据库。
如果你发现自己因为黑客而无法进入wordpress管理页面,或者仅仅是因为你忘记了密码,那么你也可以这样做。
然而,在进行任何MySQL编辑之前,你应该始终对你的数据库进行备份。然后,一旦你可以重新登录到你的网站,你可能需要遵循我们的初学者指南来修复你被黑的WordPress网站。
说到这里,让我们看看如何通过MySQL向WordPress数据库添加一个管理员用户。
用phpMyAdmin向WordPress数据库添加一个管理员用户
PhpMyAdmin预装在大多数顶级WordPress主机公司中。你可以在你的主机账户的cPanel仪表盘的数据库部分找到它。
下面是Bluehost控制面板的截图。
点击该图标将打开phpMyAdmin界面。你需要从左栏中选择你的WordPress数据库。
之后,phpMyAdmin将显示你的WordPress数据库中的所有表。你将对wp_users和wp_usermeta表进行修改。
在wp_users表中添加一个用户
首先,你需要找到wp_users表并点击它。这将显示当前列在该表中的用户。
注意下面的截图,在我们的演示网站的表中有两个用户ID,1和2。当我们为我们的演示网站创建一个新用户时,我们将给它一个ID 3。
你需要点击屏幕上方的 “插入 “选项卡,这样你就可以插入一个新的管理用户的信息。
在插入表格的字段中添加以下信息。
ID:选择一个唯一的数字(在我们的例子中,我们将使用3)。
user_login:登录时将使用的用户名
user_pass:添加一个密码,并确保在功能菜单中选择MD5(见下面的屏幕截图)
user_nicename: 用户的全名或绰号
user_email:用户的电子邮件地址
user_url: 你的网站地址
user_registered: 使用日历选择用户注册的日期和时间
user_activation_key: 留空
user_status: 设置为0
display_name: 用户的全名或显示名称
一旦你完成了,请确保你点击 “Go “按钮来存储新的用户。
将用户添加到wp_usermeta表中
现在你需要找到wp_usermeta表并点击它。之后,你应该像上一步那样点击 “插入 “选项卡。
接下来,你需要在插入表格中添加以下信息。
unmeta_id:留空(它将自动生成)
user_id:你在上一步中使用的用户ID
meta_key:这个应该是wp_capabilities
meta_value:插入这个:a:1:{s:13:”administrator”;s:1:”1″;}
之后,当你向下滚动时,你应该发现第二行的字段。你需要添加以下信息。
unmeta_id:留空(将自动生成)。
user_id:你在前面步骤中使用的用户ID
meta_key:你需要输入wp_user_level
meta_value: 10
当你完成了信息的输入,你需要点击 “Go “按钮。恭喜你,你已经创建了一个新的管理员用户名。
现在你应该能够使用你为这个用户指定的用户名和密码登录到你的WordPress管理区。
当你登录后,你需要导航到Users » All Users,然后点击你刚刚创建的用户名。
现在,在不改变任何东西的情况下,滚动到页面的底部,点击 “保存 “按钮。
这将允许WordPress清理你刚刚创建的用户并添加一些需要的信息。
使用SQL查询在WordPress数据库中添加一个管理员用户
如果你是一个开发人员,那么你可以用代码来加速这个过程。
只需将这个SQL查询放入你的数据库。
INSERT INTO `databasename`.`wp_users` (`ID`, `user_login`, `user_pass`, `user_nicename`, `user_email`, `user_url`, `user_registered`, `user_activation_key`, `user_status`, `display_name`) VALUES ('3', 'demo', MD5('demo'), 'Your Name', 'test@example.com', 'http://www.example.com/', '2022-09-01 00:00:00', '', '0', 'Your Name');
INSERT INTO `databasename`.`wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, '3', 'wp_capabilities', 'a:1:{s:13:"administrator";s:1:"1";}');
INSERT INTO `databasename`.`wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, '3', 'wp_user_level', '10');
确保你将’databasename’改为你正在使用的数据库。另外,别忘了把其他的值改成你想要的新用户的值,就像我们在第一种方法中解释的那样。