介绍使用WordPress时10个常用的MySQL查询

 更新时间:2015年04月22日 09:19:21   投稿:goldensun  
这篇文章主要介绍了介绍使用WordPress时10个常用的MySQL查询,许多用户在使用WordPress时选择使用MySQL,本文的整理对于刚刚上手的用户来说非常有用,需要的朋友可以参考下

大多数使用 WordPress 搭建的网站,其后台都是 MySQL 数据库,经常我们需要定制 WordPress 的功能,这里我们列表 10 个最有用的 WordPress 的数据库查询,你需要一个数据库的管理工具,例如  phpMyAdmin 或者  Navicat 等来执行这些 SQL 语句。

1. 将所有文件的作者改为另外一个用户

在修改之前,你先要知道两个不同用户的 ID,你可以在 WP 后台的 Author & User 页面中找到这个 ID,或者在查看用户信息时点击用户名的链接,地址栏中出现的 user_id 对应的值就是用户ID,然后运行以下命令进行修改:
 

UPDATE wp_posts SET post_author = 'new-author-id' WHERE post_author = 'old-author-id';

2. 修改默认管理员 admin 的名称

WP 默认安装会创建一个名为 admin 的管理员帐号,你可以修改这个帐号的名称:
 

UPDATE wp_users SET user_login = 'Your New Username' WHERE user_login = 'Admin';

3. 删除修订版 Revision

文章修订版浪费了大量的存储资源,当你有数以千计的文章时,这个数值更加惊人,这会影响程序执行的性能、数据获取,降低页面加载时间,解决的办法就是删除这些无用的修订版信息:
 

DELETE a,b,c FROM wp_posts a
LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id)
LEFT JOIN wp_postmeta c ON (a.ID = c.post_id)
WHERE a.post_type = 'revision'

4. 更改 GUID

在进行博客移植时,你需要修复 wp_posts 表中的 URL 里的 GUID 信息,这是非常关键的,因为 GUID 用于将 URL 路径与文章信息对应起来:
 

UPDATE wp_posts SET guid = REPLACE (guid, 'http://www.oldsiteurl.com', 'http://www.newsiteurl.com');

5. 更改 Siteurl & Homeurl

当你将网站从本地移到真正的服务器,网站并无法使用,因为完整的路径依然指向 localhost,你需要修改网站的 URL 和首页 URL:
 

UPDATE wp_options SET option_value = replace(option_value, 'http://www.oldsiteurl.com', 'http://www.newsiteurl.com') WHERE option_name = 'home' OR option_name = 'siteurl';

6. 删除 Pingback 数据

受欢迎的文章会收到大量的 pingback 信息,这会让数据库的体积庞大,可以使用下面 SQL 语句删除:
 

DELETE FROM wp_comments WHERE comment_type = 'pingback';

7. 更改图片路径

如果你使用 CDN 来处理图片访问,在创建完 CNAME 记录后,你可通过下面查询来修改所有图像的路径:
 

UPDATE wp_posts SET post_content = REPLACE (post_content, 'src="http://www.oldsiteurl.com', 'src="http://yourcdn.newsiteurl.com');

你还需要通过下面语句来修改图片附件的 GUID 信息:
 

UPDATE wp_posts SET guid = REPLACE (guid, 'http://www.oldsiteurl.com', 'http://yourcdn.newsiteurl.com') WHERE post_type = 'attachment';

8. 标出无用的标签

删除文章时并不会保证删除对应的标签,你必须手工来做这个事情,下面这个查询可让你找出那些没有用到的标签:
 

SELECT * From wp_terms wt
INNER JOIN wp_term_taxonomy wtt ON wt.term_id=wtt.term_id WHERE wtt.taxonomy='post_tag' AND wtt.count=0;

9. 重置密码

如果想重置登录密码,如果嫌麻烦可直接用下面的 SQL 语句来完成:
 

UPDATE wp_users SET user_pass = MD5( 'new_password' ) WHERE user_login = 'your-username';

10. 更新文章元数据

如果你的每篇文章都保持了特别的 URL ,可使用下面语句来处理:
 

UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, 'http://www.oldsiteurl.com','http://www.newsiteurl.com');

在做任何修改之前,我们建议你对数据库做好备份后再操作。

相关文章

  • MySQL如何解决幻读问题

    MySQL如何解决幻读问题

    在高并发数据库系统中,需要保证事务与事务之间的隔离性,还有事务本身的一致性。所以需要解决幻读问题,本文就来介绍一下,感兴趣的可以了解一下
    2021-08-08
  • MYSQL锁表问题的解决方法

    MYSQL锁表问题的解决方法

    这篇文章主要介绍了MYSQL锁表问题的解决方法,结合实例形式分析了MySQL锁表问题的常见情况与相应解决方法,需要的朋友可以参考下
    2016-03-03
  • MySQL系列教程小白数据库基础

    MySQL系列教程小白数据库基础

    这篇文章主要为大家介绍了MySQL系列中的数据库基础,非常适合数据库小白的入门基础篇,详细的讲解了数据库的基本概念以及基础命令及操作示例,有需要的朋友可以借鉴参考下
    2021-10-10
  • Centos 5.2下安装多个mysql数据库配置详解

    Centos 5.2下安装多个mysql数据库配置详解

    在实际应用中,有时候,我们需要在同一台服务器上安装两个甚至多个mysql数据库,那么,如何来操作呢,今天我们就来探讨下这个问题
    2014-07-07
  • MySQL之JSON类型字段的使用技巧分享

    MySQL之JSON类型字段的使用技巧分享

    这篇文章主要介绍了MySQL之JSON类型字段的使用技巧,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • mysql中一个普通ERROR 1135 (HY000)错误引发的血案

    mysql中一个普通ERROR 1135 (HY000)错误引发的血案

    ERROR 1135 (HY000): Can’t create a new thread (errno 11);if you are not out of available memory,you can consult the manual for a possible OS-dependent bug
    2015-08-08
  • 详解数据库连接的URL的写法及总结

    详解数据库连接的URL的写法及总结

    这篇文章主要介绍了详解数据库连接的URL的写法及总结的相关资料这里提供了四种方法1、oracle.2、MySQL.3、SQL Server.4、DB2,需要的朋友可以参考下
    2017-07-07
  • Mac 安装 mysqlclient过程解析

    Mac 安装 mysqlclient过程解析

    这篇文章主要介绍了Mac 安装 mysqlclient过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • MySQL 查询 并集、交集、差集方式

    MySQL 查询 并集、交集、差集方式

    这篇文章主要介绍了MySQL 查询 并集、交集、差集方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • Mysql利用group by分组排序

    Mysql利用group by分组排序

    这篇文章主要为大家详细介绍了Mysql利用group by分组排序,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12

最新评论