翻墙入口,Telegram上最大的免费科学上网解决方案提供者,
致力于维护互联网世界普世自由价值、建立翻墙行业新秩序。

phpmyadmin来管理wordpress数据库执行SQL语句大全

现在一般的空间都是用phpmyadmin来管理数据库,这里将以phpmyadmin为例来介绍如何执行SQL语句:进入你的phpmyadmin管理页面,然后进入你的博客对应的数据库菜单栏有个 SQL 选项,点击进去出现一个SQL语句的输入框,现在你就可以在里面输入SQL语句了输入完毕,点击 执行 ,将执行你刚才输入的SQL语句SQL语句执行完毕,你的文章也被批量修改了,现在去看看你的文章是否都被更改了最后提个醒:以下介绍的SQL语句都在我的博客上做过测试,但是尽管如此,操作数据库之前都要先备份一下你的数据库;定期备份你的数据库是好习惯。

所有语句都使用默认的 wp_ 表前缀,如果你的不是,请自行更改。

注意:下面语句中的标点符号不可以在word中查找替换。

1、        替换语句批量修改文章内容:

     如果你想替换之前写过的所有文章中的某些内容,如更换博客的名称,更换博客的网址,更换文章配图的链接等等,你可以使用以下SQL语句:

UPDATE 表名 SET 字段 = REPLACE(字段,’待替换内容’,’替换值’);

UPDATE 表名 SET 字段名 = REPLACE (字段名, ‘原内容’, ‘新内容’);
UPDATE 表名 SET 字段名 = REPLACE (字段名, ‘原内容’, ”);
说明:将新内容替换为空,替换值为空就相当于将其删除

说明:将上面语句中的中文部分换成指定的内容再到数据库执行SQL语句就能达到替换或删除字段中内容的需求,如:

UPDATE wp_posts

SET post_content = ( Replace (post_content, ‘https://fanqiangdang.com/blog’, ‘https://fanqiangdang.com/blog’) );

UPDATE wp_posts SET post_content = ( Replace (post_content, ‘https://fanqiangdang.com/blog’, ‘https://fanqiangdang.com/blog’) );

UPDATE wp_posts SET post_content = REPLACE( post_content, ‘old content A’, ‘new content B’ );

UPDATE wp_posts SET post_content = REPLACE ( post_content, ‘src=”oldurl.com’, ‘src=”newurl.com’);

UPDATE wp_posts SET post_content = REPLACE( post_content, ‘逗比’, ‘逗比根据地’ );

解释:更新数据库中wp_posts表post_content字段的内容,将所有文章中的 逗比 字眼,全部替换成 逗比根据地,你可以根据需要做一些更改。

2、        更改文章插图的链接

因为文章内容在数据库中是以HTML代码形式存储的,所以以上SQL语句同样可以替换HTML代码。如果你只是想更改文章插图的链接,而不想影响其他的链接,可以使用以下SQL语句,所有src=”oldurl.com被替换成了src=”newurl.com

UPDATE wp_posts SET post_content = REPLACE (post_content, ‘src=”oldurl.com’, ‘src=”newurl.com’);

3、        如果你是以图片附件形式上传的话,需要更改图片附件的GUID

UPDATE wp_posts SET  guid = REPLACE (guid, ‘oldsiteurl.com’, ‘newsiteurl.com’) WHERE post_type = ‘attachment’;

4、        SQL语句批量替换wordpress文章标题中内容

UPDATE wp_posts SET post_title = REPLACE (post_title, ‘2014’, ‘2015’);

说明:将wordpress文章标题中的2014替换为2015

UPDATE wp_posts SET post_title = REPLACE (post_title, ‘2015’, ”);

说明:将wordpress文章标题中的2015替换为空,为空就相当于将其删除

wordpress文章数据表:wp_posts
wordpress文章标题字段:post_title

5、        SQL语句批量替换wordpress文章内容中文字

UPDATE wp_posts SET post_content = REPLACE (post_content, ‘博主’, ‘小明’);

说明:将wordpress所有文章内容(包括页面)中博主两个字换成小明

6、        SQL语句批量替换typecho文章内容中链接

UPDATE typecho_contents SET text = REPLACE (text, ‘http://teai.org’, ‘https://yijile.com’);

说明:将typecho所有文章内容(包括页面)中链接teai.org替换为yijile.com

7、        批量修改文章摘要:

     文章摘要就是你在WordPress后台编辑文章时,”摘要”框中输入的内容,如果你想批量更改文章摘要,可以使用以下语句:

UPDATE wp_posts SET post_excerpt = REPLACE( post_excerpt, ‘逗比’, ‘逗比根据地’ );

     该语句的功能是将所有文章摘要中的 逗比 字眼,全部替换成 逗比根据地

8、        批量修改文章的作者:

     假设你的博客有两名注册用户,张三和李四,你想将张三的所有文章划归到李四名下,这时候该怎么办呢?你可以执行以下语句:

UPDATE wp_posts SET post_author = 李四用户id WHERE post_author = 张三用户id;

     那如何获得 李四的用户id 和 张三的用户id 呢?你可以执行以下SQL语句:

SELECT ID, user_nicename, display_name FROM wp_users;

     这时将列出你博客上所有的注册用户的ID,昵称和公开显示的名称,你现在就可以找到对应用户的ID了,如下图,zhangsan的ID为2,lisi的ID为5:

UPDATE wp_posts SET post_author = 5  WHERE post_author = 2;

9、        批量修改文章评论者的网站URL:

     假设,你的博客有个非常忠实的读者,给你的博客文章留下很多有用的评论,同时他的评论都填写了留言者的网站URL,但是有一天他的博客域名换了,并请求你更新他留言中的网站URL,那你怎么办?手动一个一个帮他改,这不太现实。你可以使用以下SQL语句:

UPDATE wp_comments  SET comment_author_url =  REPLACE( comment_author_url, ‘oldurl.com’, ‘newurl.com’ )

     以上语句,将留言者所有旧的网站链接oldurl.com,更改为新的网址newurl.com

10、   禁用所有文章的pingback功能:

     开启pingback功能,可以在别人引用你的文章链接的情况下,给你发送通知,但是该功能似乎对我们的文章没多大帮助,那为何不把pingback给禁止了呢?在WordPress后台 – 设置 – 讨论,取消勾选”接收来自外部博客的引用通告(pingbacks 和 trackbacks)”,这样以后的文章都不开启pingback,但是该选项不会对之前的已发布的文章起作用,还是要用到SQL:

UPDATE wp_posts SET ping_status = ‘closed’;

11、   删除所有文章的修订版:

     在通常情况下,文章的修订版对大多数人来说没多大意义,而且修订版的数量会随着你修改文章的次数不断增长,这会增加数据库的查询速度,这并不是什么好事。互联网上有很多教你如何禁止修订版的文章,还有很多插件可以删除文章修订版,你可以自己搜索看看。这里教你如何使用SQL语句,删除所有已产生的文章修订版数据:

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’;

12、   删除某个评论者的所有评论:

     如果你的博客想要封杀某人,并删除其在你博客的所有留言,可以使用以下SQL语句。

(1)根据留言者的博客URL进行删除,以下SQL语句将删除所有URL为 www.example.com 的评论

DELETE FROM wp_comments 
WHERE comment_author_url LIKE ‘%www.example.com%’;

(2)根据留言者的昵称进行删除,以下语句将删除所有昵称为 example 的评论

DELETE FROM wp_comments 
WHERE comment_author = ‘example’;

(2)根据留言者的Email进行删除,以下语句将删除所有Email为 [email protected] 的评论

DELETE FROM wp_comments 
WHERE comment_author_email = ‘[email protected]’;

13、   替换所有评论中的敏感词汇:

     国内的互联网监控力度表现出了不断加强的趋势,如果你的博客评论中出现了大量的敏感词汇,很可能离被墙也不远了。最好的做法是,替换相关的敏感词汇,以保证你的博客安全,以下SQL语句将所有评论中的 fuck,替换成 **,替换内容根据你的需要来。

UPDATE wp_comments 
SET comment_content = REPLACE( comment_content, ‘fuck’, ‘**’ );

14、   关闭文章评论功能

     有时候你的博客可能会因为某种原因,需要关闭文章的评论。在WordPress后台 – 设置 – 讨论,那里取消勾选”允许人们发表新文章的评论”,以后发表的文章默认是关闭评论的。但是之前已经发表的文章,若想关闭评论需要你一篇一篇地去修改评论设置,这是一件比较痛苦的事情。以下SQL语句可以帮助你轻松地批量关闭文章评论:

(1) 关闭所有旧文章的评论:
     通常情况下,一篇旧文章就很少会有人发表评论了,一般访问旧文章的访客大都来自搜索引擎,这是好事,但是这部分访客还会提出一些新问题,尤其是技术问题,但是可能文章中提到的技术细节你已经淡忘,这时候会让你很难办。最好的做法还是还是禁用旧文章的评论,以下SQL将禁止2009-01-01之前发表的所有文章的评论,你可以根据需要修改日期:

UPDATE wp_posts 
SET comment_status = ‘closed’ 
WHERE post_date < ‘2009-01-01’ AND post_status = ‘publish’;

(2) 关闭所有文章的评论:
     有时候很不幸,在不可抗力的威胁下,你不得不关闭所有文章的评论,可以使用以下SQL语句:

UPDATE wp_posts 
SET comment_status = ‘closed’ WHERE post_status = ‘publish’;

15、   筛选自定义meta的YouRUrl_value包含.pdf的内容,替换为.rar

UPDATE `wp_postmeta` SET `meta_value` = REPLACE( meta_value, ‘.pdf’, ‘.rar’ ) WHERE `meta_key` = ‘YouRUrl_value’ AND `meta_value` LIKE ‘%.pdf%’

16、   查找wordpress自定义字段yourmeta中包含aaa.com的记录

select * from wp_postmeta WHERE `meta_key` = ‘yourmeta_value’ AND `meta_value` LIKE ‘%aaa.com%’

17、   建立一张表来存储查找的记录

create table a_temp as select * from wp_postmeta WHERE `meta_key` = ‘yourmeta_value’ AND `meta_value` LIKE ‘%aaa.com%’

18、   在刚才新建的表中插入包含bbb.com的记录

insert into a_temp(meta_id,post_id,meta_key,meta_value) select * from wp_postmeta WHERE `meta_key` = ‘xzy1url_value’ AND `meta_value` LIKE ‘%bbb.com%’

19、   mysql删除斜杠/之前的内容.如果有多个斜杠/,就多执行几次

update a_temp SET meta_value = SUBSTRING(meta_value, INSTR(meta_value, ‘/’) + 1)

20、   mysql在meta_value字段原有的字符串前插入字符串aaa

update a_temp SET meta_value= CONCAT(‘aaa’,meta_value)

21、   mysql在meta_value字段原有的字符串后插入字符串aaa

update a_temp SET meta_value= CONCAT(meta_value,’aaa’)

22、   mysql字段的字符串中格式化

UPDATE a_temp SET meta_value = REPLACE( meta_value, ‘ ‘, ” )
UPDATE a_temp SET meta_value = REPLACE( meta_value, ‘.’, ‘_’ )
UPDATE a_temp SET meta_value = REPLACE( meta_value, ‘_rar’, ‘.rar’ )
UPDATE a_temp SET meta_value = REPLACE( meta_value, ‘,’, ” )

UPDATE `wp_postmeta` SET `meta_value` = REPLACE( meta_value, ‘.pdf’, ‘.rar’ ) WHERE `meta_key` = ‘yoururl_value’ AND `meta_value` LIKE ‘%bbbb.com%’

23、   筛选yoururl_value字段里包含bbbb.com内容的数据

select * from wp_postmeta WHERE `meta_key` = ‘yoururl_value’ AND `meta_value` LIKE ‘%bbbb.com%’

24、   建立a_temp存放筛选出来的数据

create table a_temp as select * from wp_postmeta WHERE `meta_key` = ‘yoururl_value’ AND `meta_value` LIKE ‘%bbbb.com%’

25、   将包含cccc.com内容的数据追加插入a_temp

insert into a_temp(meta_id,post_id,meta_key,meta_value) select * from wp_postmeta WHERE `meta_key` = ‘yoururl_value’ AND `meta_value` LIKE ‘%cccc.com%’

create table a_temp as select * from wp_postmeta WHERE `meta_key` = ‘yoururl_value’ AND `meta_value` LIKE ‘%bbbb.com%’;

26、   替换内容中的部分字符,对内容进行格式化

UPDATE a_temp SET meta_value = REPLACE( meta_value, ‘ ‘, ” );
UPDATE a_temp SET meta_value = REPLACE( meta_value, ‘.’, ‘_’ );
UPDATE a_temp SET meta_value = REPLACE( meta_value, ‘_rar’, ‘.rar’ );
UPDATE a_temp SET meta_value = REPLACE( meta_value, ‘,’, ” );
update a_temp SET meta_value= CONCAT(‘http://xxxx.com/’,meta_value);

27、   用临时表的内容替换原字段内容

DELETE FROM wp_postmeta WHERE meta_key = ‘yoururl_value’ AND `meta_value` LIKE ‘%bbbb.com%’

将a_temp表处理好后的下载地址,更新到wp_postmeta的yoururl_value

UPDATE wp_postmeta,a_temp  SET wp_postmeta.meta_value=a_temp.meta_value  WHERE wp_postmeta.meta_id=a_temp.meta_id

28、   删除所有未使用的标签

1 2 3 4 5 DELETE a,b,c FROM wp_terms AS a LEFT JOIN wp_term_taxonomy AS c ON a.term_id = c.term_id LEFT JOIN wp_term_relationships AS b ON b.term_taxonomy_id = c.term_taxonomy_id WHERE c.taxonomy = ‘post_tag’ AND c.count = 0

29、   删除所有文章修订版本(Revisions)以及它们的Meta数据

1 2 3 4 5 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’

30、   更改WordPress地址和首页地址

1 2 3 UPDATE wp_options SET option_value = replace(option_value, ‘http://www.旧网址.com’, ‘http://www.新网址.com’) WHERE option_name = ‘home’ OR option_name = ‘siteurl’

31、   更改文章的GUID

1 2 UPDATE wp_posts SET guid = REPLACE (guid, ‘http://www.旧网址.com’, ‘http://www.新网址.com’)

32、   更改正文中的链接地址

1 2 UPDATE wp_posts SET post_content = REPLACE (post_content, ‘http://www.旧网址.com’, ‘http://www.新网址.com’)

33、   更新文章的Meta值

1 2 UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, ‘http://www.旧网址.com’, ‘http://www.新网址.com’)

34、   重设Admin密码

1 2 3 UPDATE wp_users SET user_pass = MD5( ‘new_password’ ) WHERE user_login = ‘admin’

35、   重设admin的用户名

1 2 3 UPDATE wp_users SET user_login = ‘newname’ WHERE user_login = ‘admin’

36、   将作者a的文章全部转移到作者b

1 2 3 UPDATE wp_posts SET post_author = ‘b’ WHERE post_author = ‘a’

37、   删除文章的meta标签

1 2 DELETE FROM wp_postmeta WHERE meta_key = ‘your-meta-key’

38、   导出所有评论中的邮件地址

1 2 SELECT DISTINCT comment_author_email FROM wp_comments

39、   删除所有的Pingback

1 2 DELETE FROM wp_comments WHERE comment_type = ‘pingback’

40、   删除所有的垃圾评论

1 2 DELETE FROM wp_comments WHERE comment_approved = ‘spam’

41、   禁用所有激活的插件

1 2 3 UPDATE wp_options SET option_value = ” WHERE option_name = ‘active_plugins’

42、   罗列所有未使用的Meta标签

1 2 3 4 SELECT * FROM wp_postmeta pm LEFT JOIN wp_posts wp ON wp.ID = pm.post_id WHERE  wp.ID IS NULL

43、   关闭旧文章的留言

1 2 3 UPDATE wp_posts SET comment_status = ‘closed’ WHERE post_date < ‘2009-01-01’ AND post_status = ‘publish’

44、   更新留言者的网址

1 2 UPDATE wp_comments SET comment_author_url = REPLACE( comment_author_url, ‘http://旧网址.com’, ‘http://新网址.com’ )

45、   更新正文内所有的’target=”_blank”‘为’rel=”nofollow”‘

1 2 UPDATE wp_posts SET post_content = REPLACE (post_content, ‘target=”_blank’,  ‘rel=”nofollow’)

46、   删除未使用的Meta标签

1 2 3 4 DELETE pm FROM wp_postmeta pm LEFT JOIN wp_posts wp ON wp.ID = pm.post_id WHERE wp.ID IS NULL

47、   更改文章自定义字段的名称

1 UPDATE `wp_postmeta` SET `meta_key` = ‘新名称’ WHERE `meta_key` = ‘旧名称’;
赞(0)
未经允许不得转载:翻墙党 » phpmyadmin来管理wordpress数据库执行SQL语句大全
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址