在《实用WordPress SQL语句集锦:第二章》中,我们分析的是关于批量删除待审核评论和变更日志归属的SQL命令。这一章我们讲解手工重置密码和变更WordPress域名的方案。
5、手动重置密码
问题。为了加强对博客的保护,人们往往选择强密码,如u7* KoF5i8_这样的字符串。这个习惯很好,但我也听到不少忘记密码的故事,绝对的杯具啊。
方案。虽说遗失密码后,WordPress可以发送电子邮件,让你通过一个链接完成密码重置。但是,如果你不能访问WordPress数据库中记录的电子邮件地址了,或者你比较喜欢运行一个简单的命令来解决该问题,那么下面的方法绝对适合你。
- 登录phpMyAdmin,选择WordPress数据库,然后打开SQL窗口。
- 输入以下命令(假设你的用户名是“admin”):
UPDATE wp_users SET user_pass = MD5('PASSWORD') WHERE wp_users.user_login = 'admin' LIMIT 1;
- 大功告成。原密码已经被修改为上述语句中标记为“PASSWORD”的字符串。
解释。用户密码存储在wp_users表中。当然,密码是经过MD5哈希加密的。
我们提交一个“UPDATE”SQL请求,并使用MySQL内建的MD5函数将新密码转换为MD5值,然后更新原密码。“WHERE”子句确保我们仅更新管理员账号的密码。注意:未经“WHERE”条件限制的语句将导致所有用户密码全部被更新!
来源:
6、变更WordPress域名
问题。虽然我们不建议这么做,但有时你可能希望变更博客域名,同时保留原有数据。由于WordPress将域名记录在数据库中,我们必须更新数据库相应条目,以建立新域名与原博客的关联。
方案。
- 你猜对了:首先要做的仍然是登录phpMyAdmin,然后选择WordPress数据库。
- 点击“SQL”按钮,打开SQL命令窗口。要改变WordPress URL地址,先执行这个命令:
UPDATE wp_options SET option_value = replace(option_value, 'http://www.oldsite.com', 'http://www.newsite.com') WHERE option_name = 'home' OR option_name = 'siteurl';
- 然后,我们要变更各日志的相对URL(GUID)。以下命令能完成该项工作:
UPDATE wp_posts SET guid = replace(guid, 'http://www.oldsite.com', 'http://www.newsite.com');
- 任务接近完成。我们要做的最后一项工作是更新wp_posts表,以确保没有任何绝对URL仍使用原域名:
UPDATE wp_posts SET post_content = replace(post_content, 'http://www.oldsite.com', 'http://www.newsite.com');
- 大功告成。现在我们应该能够使用新网址登录到WordPress控制板了。
解释。要轻松改变WordPress域名,我们可以借助于超有用的MySQL函数“replace”,即,以一个字符串取代另一个。
来源:
发表回复