最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

MySQL切分查询用法分析

来源:动视网 责编:小采 时间:2020-11-09 20:50:57
文档

MySQL切分查询用法分析

MySQL切分查询用法分析:本文实例讲述了MySQL切分查询用法。分享给大家供大家参考,具体如下: 对于大查询有时需要分而治之',将大查询切分为小查询: 每个查询功能完全一样,但只完成原来的一小部分,每次查询只返回一小部分结果集。 删除旧的数据就是一个很好地例子。定期清理旧数
推荐度:
导读MySQL切分查询用法分析:本文实例讲述了MySQL切分查询用法。分享给大家供大家参考,具体如下: 对于大查询有时需要分而治之',将大查询切分为小查询: 每个查询功能完全一样,但只完成原来的一小部分,每次查询只返回一小部分结果集。 删除旧的数据就是一个很好地例子。定期清理旧数


本文实例讲述了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数据库计有所帮助。

您可能感兴趣的文章:

  • 用JavaScript实现字符串切分功能
  • PHP explode()函数用法、切分字符串
  • java向多线程中传递参数的三种方法详细介绍
  • Java多线程的用法详解
  • java基本教程之java线程等待与java唤醒线程 java多线程教程
  • 15个高级Java多线程面试题及回答
  • 详解Nginx服务器中的Socket切分
  • JS字符串的切分用法实例
  • python实现按行切分文本文件的方法
  • Java多线程实现快速切分文件的程序
  • 文档

    MySQL切分查询用法分析

    MySQL切分查询用法分析:本文实例讲述了MySQL切分查询用法。分享给大家供大家参考,具体如下: 对于大查询有时需要分而治之',将大查询切分为小查询: 每个查询功能完全一样,但只完成原来的一小部分,每次查询只返回一小部分结果集。 删除旧的数据就是一个很好地例子。定期清理旧数
    推荐度:
    标签: 查询 使用 用法
    • 热门焦点

    最新推荐

    猜你喜欢

    热门推荐

    专题
    Top