今天访问程序时报如下异常:

主要原因如下:

数据库所在磁盘空间不够所致。

于是登录数据库所在的服务器,查看了下数据库所占的磁盘空间如下:

可以看到磁盘的33G,被全部占满了,于是就开始了数据库表的清理工作。

1.首先执行以下sql语句,查询数据库中各个表所占空间大小,输出按降序排序

SELECT TABLE_NAME, CONCAT(TRUNCATE(data_length/1024/1024,2),' MB') AS data_size,

CONCAT(TRUNCATE(index_length/1024/1024,2),' MB') AS index_size

FROM information_schema.tables WHERE TABLE_SCHEMA = 'olderdb'

GROUP BY TABLE_NAME

ORDER BY data_length DESC;

输出结果如下:

看见了吧,一亿多条数据,占用了十几G的内存空间。

那么如何删除了,首先查看表字段:

发现sttime字段是按照时间顺序插入的,这就简单了,直接按照时间段删除数据就可以了。具体的删除方法如下:

按时间段进行删除操作,sql如下:

① 使用BETWEEN关键字根据时间字段删除一定时间内的记录

DELETE FROM 表名 WHERE 时间字段 BETWEEN 开始时间 AND 结束时间

示例:

DELETE FROM tb WHERE CreateTime BETWEEN '2017-01-01 00:00:00' AND '2017-02-01 00:00:00'--删除tb表中2017年1月1日到2017年2月1日的数据

② 使用时间字段比较大小来确定删除范围

--语法:DELETE FROM 表名 WHERE 时间字段>=开始时间 AND 时间字段<=结束时间

示例:

DELETE FROM tb WHERE CreateTime>='2017-01-01 00:00:00' AND CreateTime<='2017-02-01 00:00:00'

ok,执行删除语句比较费时,数据量大的话可能要删几个小时,像我这种上G的数据量估计得删除一天了。

注意:

本文介绍的只是遇到突发状况,像我这种磁盘撑爆了,只能临时抱佛脚,在实际开发中,都是写触发器的,每隔一段时间调用下触发器后台删除就完了。

mysql 删除时间范围数据_mysql数据库按时间删除数据总结相关推荐

  1. mysql插10万条数据_MySQL数据库插入100w条数据要花多久?

    MySQL数据库插入100w条数据要花多久? 1.多线程插入(单表) 2.多线程插入(多表) 3.预处理SQL 4.多值插入SQL 5.事务(N条提交一次) # 多线程插入(单表) 问:为何对同一个表 ...

  2. mysql 异常关机后 无法查数据_MySQL数据库非法关机造成数据表损坏怎么排查 | 学步园...

    该篇文章我们介绍由于非法硬件关机,造成了MySQL数据库的数据表损坏,数据库不能正常运行的一个实例.下面学步园小编来讲解下MySQL数据库非法关机造成数据表损坏怎么排查? MySQL数据库非法关机造成 ...

  3. mysql中如何去除重复数据_mysql数据库如何去除重复数据

    mysql数据库去除重复数据的方法:1.查询需要删除的记录,会保留一条记录:2.删除重复记录,只保留一条记录,代码为[delete a from test1 a, (...)as bid from t ...

  4. mysql查询 伪列_Mysql数据库查询到的数据设置伪列显示

    本次查询表为:  tasks 查询的字段为: id,name 查询语句为: select id,name from tasks; 查询结果为: +----+------------+ | id | n ...

  5. 从mysql数据库中删除一行数据_mysql数据库删除一行数据

    [MySQL]命令行工具和基本操作 原文:[MySQL]命令行工具和基本操作 一 MySQL命令行工具  (查看帮助 ---help,或 -?) 1)MySQL MySQL是一个简单的SQL外壳(有G ...

  6. MySql中添加用户,新建数据库,用户授权,删除用户,修改密码

    MySql中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束): 1.新建用户 登录MYSQL: @>mysql -u root -p @>密码 ...

  7. Excel向数据库插入数据和数据库向Excel导出数据

    为了熟悉java里工作簿的相关知识点,所以找了"Excel向数据库插入数据和数据库向Excel导出数据"的功能来实现. 注意事项:1,mysql数据库: 2,需要导入的jar包有 ...

  8. mysql没有索引删除一亿数据_mysql数据库如何实现亿级数据快速清理

    今天收到磁盘报警异常,50G的磁盘被撑爆了,分析解决过程如下: 1. 进入linux服务器,查看mysql文件夹中各个数据库所占的磁盘空间大小 看到了吗,光olderdb就占了25G 2. 用SQLy ...

  9. mysql怎么快速删除亿级数据_mysql数据库如何实现亿级数据快速清理

    今天收到磁盘报警异常,50G的磁盘被撑爆了,分析解决过程如下: 1. 进入linux服务器,查看mysql文件夹中各个数据库所占的磁盘空间大小 看到了吗,光olderdb就占了25G 2. 用SQLy ...

最新文章

  1. 在ubuntu12.04 的QT安装
  2. Oracle 数据库整理表碎片
  3. TCP传输的单个报文最大字节(MSS和MTU)
  4. 【Boost】boost库asio详解1——io_service::run函数无任务时退出的问题
  5. 老男孩Day1作业(一):编写登录接口
  6. 根据经纬度求最近点的三种解法java实现
  7. 移动硬盘备份linux系统盘,将Ubuntu Linux系统放到你的移动硬盘
  8. 初学 Delphi 嵌入汇编[27] - XCHG 指令: 交换寄存器的内容
  9. devops流程工具_您的DevOps工作流程依赖哪些工具?
  10. python保存模型 drop_(长期更新)【python数据建模实战】零零散散问题及解决方案梳理...
  11. 如何在Mac上使用终端阻止网站?
  12. Java字符串首字母大写
  13. 中级 PHP 知识点汇总
  14. Microsoft SQL Server 2008 R2官方中文版(SQL2008下载).rar
  15. Cboard修改-折线图/柱形图,显示数据、修改颜色、柱形图设置最大宽度
  16. IP报文格式及各字段的意义
  17. [完美解决] kali打不开Google Chrome 双击谷歌浏览器图标无反应
  18. Photoshop插件-证件照-3寸裁剪-3寸排版-脚本开发-PS插件
  19. 小学计算机应用计划,小学计算机教学计划
  20. 搭建mqtt服务器mosquitto以及添加CA证书

热门文章

  1. java中hashCode方法与equals方法的用法
  2. 卧槽!百度网盘炸了!!!
  3. BBL 啤酒桶体积代表什么?
  4. 如何设置直播前添加或插入10秒广告
  5. ★ 常用正则表达式收集!
  6. linux系统挂载emc存储,EMC-VNX5100存储设备挂载到linux系统
  7. MongoDB查询条件 lt lte gt gte
  8. mysql无逗号注入
  9. SpringSecurity自定义Filter的ignoring()失效问题源码分析
  10. 蓝牙遥控斜三角履带底盘行驶功能的实现