批量替换 MySQL 数据库指定字段中域名

分类:Linux 评论: 5

起因

因域名更替,导致原有的图片链接必须进行修改,考虑到手工操作工作量大,且容易出现问题,因此使用 SQL 进行处理。

原表字段 str_value 里的 URL 值进行替换。

序号 原 URL 目标 URL
01 https://cdn.wave.red/pic/2017/09/220170901.jpg https://img2.vvave.net/cover/2017/09/220170901.jpg
02 https://cdn.wave.red/pic/2017/09/220170902.jpg https://img2.vvave.net/cover/2017/09/220170902.jpg
03 https://cdn.wave.red/pic/2017/09/220170903.jpg https://img2.vvave.net/cover/2017/09/220170903.jpg
04 https://cdn.wave.red/pic/2017/09/220170904.jpg https://img2.vvave.net/cover/2017/09/220170904.jpg

处理

SQL 格式:

UPDATE `库名`.`表名` SET `字段` = REPLACE(`字段`,'原值','目标值') WHERE '条件(如果有)';

实际语句

UPDATE `typecho`.`typecho_fields` SET `str_value` = REPLACE(`str_value`,'https://cdn.wave.red/pic/','https://img2.vvave.net/cover/');

附录

参考链接

回复
  1. 回访下,另外问一下你不会就是通过找这个命令来到我博客的吧~

    回复
    1. @Mark

      哈哈哈,并不是。貌似是通过某人的友链访问到贵站的。

      回复
      1. @Kane

        好吧,最近好像掉收录了,改结构改的,你博客很漂亮,加油

        回复
  2. 最好是不存放域名

    回复
    1. @凉风有信

      只是存储的封面图的链接罢了

      回复