MySQL切分查询用法分析

 更新时间:2016年04月19日 11:41:05   转载 作者:mo_guang  
这篇文章主要介绍了MySQL切分查询用法,结合实例形式分析了通过do while语句进行切分查询的具体实现技巧,需要的朋友可以参考下

本文实例讲述了MySQL切分查询用法。分享给大家供大家参考,具体如下:

对于大查询有时需要‘分而治之',将大查询切分为小查询: 每个查询功能完全一样,但只完成原来的一小部分,每次查询只返回一小部分结果集。

删除旧的数据就是一个很好地例子。定期清理旧数据时,如果一条sql涉及了大量的数据时,可能会一次性锁住多个表或行,耗费了大量的系统资源,却阻塞了其他很多小的但重要的查询。将一个大得DELETE语句切分为较小的查询时,可以尽量减少影响msql的性能,同时减少mysql复制造成的延迟。

例如,每个月会运行一次的语句,以清理三个月前的数据:

复制代码 代码如下:
mysql> DELETE FROM messages WHERE dt<DATE_SUB(NOW(), INTERVAL 3 MONTH);

可以用以下的方法来完成这样的任务:

rows_affected = 0
do {
   rows_affected = do_query("DELETE FROM messages WHERE dt<DATE_SUB(NOW(), INTERVAL 3 MONTH) LIMIT 10000")
}while rows_affected>0

一次删除一万行数据是个比较高效且对服务器影响较小的做法。同时如果每次删除数据时暂停一会,可以将服务器原本的一次性压力分散到一个较长的时间段中,从而减少删除时锁表锁行的时间。

更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》、《MySQL数据库锁相关技巧汇总》及《MySQL常用函数大汇总

希望本文所述对大家MySQL数据库计有所帮助。

相关文章

  • mysql 主从服务器的简单配置

    mysql 主从服务器的简单配置

    首先呢,需要有两个mysql服务器。如果做测试的话可以在同一台机器上装两个mysql服务程序,注意要两个运行程序的端口不能一样。我用的是一个是默认的3306,从服务器用的是3307端口。
    2009-05-05
  • MySQL5.7中的JSON基本操作指南

    MySQL5.7中的JSON基本操作指南

    这篇文章主要给大家介绍了关于MySQL5.7中JSON的基本操作,文中通过示例代码介绍的非常详细,对大家学习或者使用Mysql具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-03-03
  • MySQL 声明变量及存储过程分析

    MySQL 声明变量及存储过程分析

    这篇文章主要介绍了MySQL 声明变量及存储过程的相关内容,小编觉得挺不错的,这里分享给大家,需要的朋友可以参考下。
    2017-10-10
  • Mysql5.6忘记root密码修改root密码的方法

    Mysql5.6忘记root密码修改root密码的方法

    这篇文章主要介绍了Mysql5.6忘记root密码修改root密码的方法的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-06-06
  • Mysql的游标的定义使用及关闭深入分析

    Mysql的游标的定义使用及关闭深入分析

    于游标的用法Mysql现在提供的还很特别,虽然使用起来没有PL/SQL那么顺手,不过使用上大致上还是一样,本文将详细介绍一下,需要了解的朋友可以参考下
    2012-12-12
  • java连接mysql底层封装详解

    java连接mysql底层封装详解

    这篇文章主要介绍了java连接mysql底层封装,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10
  • 史上最全的MySQL备份方法

    史上最全的MySQL备份方法

    史上最全的MySQL备份方法,需要的朋友可以参考下。
    2010-03-03
  • mysql 5.7.14 免安装版注意事项(精)

    mysql 5.7.14 免安装版注意事项(精)

    这篇文章主要介绍了mysql 5.7.14 免安装版注意事项的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-09-09
  • MySQL分区表的最佳实践指南

    MySQL分区表的最佳实践指南

    这篇文章主要给大家介绍了关于MySQL分区表的最佳实践指南,文中通过示例代码介绍的非常详细,对大家学习或者使用MySQL具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-05-05
  • MySQL高效分页解决方案集分享

    MySQL高效分页解决方案集分享

    这篇文章介绍了MySQL高效分页解决方案集,有需要的朋友可以参考一下
    2013-11-11

最新评论