普通的wordpress用户一般都不会去对MySQL操刀,但它又确实是一个好东西,可以事半功倍。比如要做垃圾站,执行MySQL批量替换语句是一个垃圾站站长应该学会的必杀技。
当然,下面介绍的SQL语句并不涉及这块,而只是让用户在需要的时候,更加方便的管理WordPress。当然,高度提醒,如果你对MySQL不熟悉,在执行下面这些语句之前,记得备份自己的数据库。
1、创建备份WordPress数据库
备份WordPress数据库是首先要做的事情,只需要通过以下方法就可以简单备份WordPress数据库:
登录phpMyAdmin后。选择你的WordPress数据库,然后点击“导出”按钮,选择一种压缩方式(可以使用gzip)并单击“执行”按钮,当浏览器提示是否下载的时候,点“是”,将数据库文件下载到本地。
2、批量删除WordPress的文章修订
WordPress2.6以后的版本增加了一个Post revisions功能,虽然有点用,但文章修订增加了你数据库的大小,我们可以选择批量删除。
登录phpMyAdmin后执行下面的SQL语句即可批量删除。
DELETE FROM wp_posts WHERE post_type = "revision";
你也可以使用帕兰映像之前介绍的专门用于删除Post Revisions的WordPress插件 - Delete Revisons。
3、批量删除WordPress的垃圾评论
如果你的博客有大量垃圾评论,要手动删除这些评论要花大量时间,因此我们可以使用以下办法。
登录phpMyAdmin后执行下面的SQL语句。
DELETE from wp_comments WHERE comment_approved = '0';
要小心,虽然这种解决方案对于处理数百万的垃圾平邮非常有用,但是也会清除未经批准的评论,因此最好还是安装使用Akismet来对付垃圾评论。你可以参考帕兰映像之前介绍的40+Wordpress反垃圾留言插件/Anti Spam和7个反垃圾留言的Wordpress工具
4、修改WordPress文章属性
你安装WordPress后,admin账户就创建了,不少人都错误的使用这个帐号来写博客,直到他们认识到,这并不是个人帐号。
解决的方法,每篇文章修改作者属性需要大量的时间,下面的这个SQL语句可以帮你快速完成这个功能。
首先你要找到你正确的用户名,使用下面的SQL语句可以找到你的用户ID号。
SELECT ID, display_name FROM wp_users;
假设这个ID为NEW_AUTHOR_ID,而管理员admin的ID为OLD_AUTHOR_ID,接着,运行下面的SQL语句。
UPDATE wp_posts SET post_author=NEW_AUTHOR_ID WHERE post_author=OLD_AUTHOR_ID;
5、手动重设密码
很多人为了保护自己的博客不被人黑掉,使用了很复杂的密码,这虽然是一件好事,但也经常会发生遗忘管理员密码的事情。
当然,通过电子邮件可以发送给你WordPress重设密码的链接,但如果你无法访问你的邮件地址,那么就只好使用下面的SQL语句来重设你的密码了。
UPDATE wp_users SET user_pass = MD5('PASSWORD') WHERE wp_users.user_login ='admin' LIMIT 1;
MD5是MySQL内置的哈希函数,用于将密码转换为散列值。
6、更改WordPress的域名
你可能有时候会想要更改你博客的域名,但是WordPress会将你的域名存储在数据库中,因此你要使用下面的SQL语句来修改。
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';
接着,你还要使用下面的SQL将文章的GUID也进行修改。
UPDATE wp_posts SET guid = replace(guid, 'http://www.oldsite.com','http://www.newsite.com');
最后,使用下面的语句将文章里所有旧域名替换为新域名。
UPDATE wp_posts SET post_content = replace(post_content, 'http://www.oldsite.com', 'http://www.newsite.com');
7、显示SQL查询数量
在你有话博客性能的时候,了解到查询数据库的数量是非常重要的,为了减少数据库查询,我们需要知道在一个页面上到底有多少个查询。
这一次,不需要登录phpMyAdmin了,你只需要修改footer.php文件,在文件结尾增加下面几行代码即可。
<?php if (is_user_logged_in()) { ?>
<?php echo get_num_queries(); ?> queries in <?php timer_stop(1); ?> seconds.
<?php } ?>
8、恢复你的WordPress数据库
当你的数据库因为某些原因(黑客或者升级错误)被损坏或者丢失了,如果你有备份的话,那可以恢复你的WordPress数据库。
登录phpMyAdmin,选择你的WordPress数据库,点“导入”按钮,点“浏览”按钮,然后从你的硬盘选择备份文件,点“执行”按钮就可以将数据库导入。
如果顺利的话,你的WordPress功能将会恢复正常。
英文原文:8 Useful WordPress SQL Hacks/SM
译文原文:八个有用的WordPress的SQL语句/月光
没有评论:
发表评论