清理8组nodes中表的历史数据,平均每个node中的表有1.5亿条记录,需要根据date_created字段清理8000W数据记录,这个字段没有索引。

环境介绍 

线上磁盘空间不足,truncate了许多能动的表,磁盘空间还是占据了87%,我们的nagios报警阀值是80%。所以不断的还会收到email以及短信报警。需要根据时间字段date_created清理,但是在设计之初由于当初的开发人员考虑不足所以date_created字段没有建立索引。另外这些数据可以不用备份,直接删除掉。

问题来了,这么大记录量的表,根据date_created字段删除记录,而且还没有索引,难度肯定非常大。enl.ibd文件大小29G大小,磁盘剩余空间32G,两者差距比较小。

[mysql@xxxx-xxx ide]$ ll -h enl.ibd
-rw-rw---- 1 mysql mysql 29G Aug 30 07:21 enl.ibd

方案策划中,大概准备采用shell命令。

虽然date_created 没有索引,但是我们做过实验

mysql> select * from enl where date_created < "2013-01-01 00:00:00" limit 1000;

......

1000 rows in set (0.00 sec)

看来执行效果还不错,那再试下delete效果

mysql> delete from enl where date_created < "2013-01-01 00:00:00" limit 1000;

Query OK, 1000 row affected (2.00 sec)

看起来可以每次删除1000条,写脚本delete吧

for ((i=0;i<1000000;i++));do mysql -uroot -e 'use iden;delete  from enl where date_created < "2013-01-01 00:00:00" limit 1000;';done

等delete操作完成之后,找业务低峰期执行 alter table enl  engine=innodb;来释放磁盘空间。

清理8组nodes中表的历史数据,平均每个node中的表有1.5亿条记录,需要根据date_created字段清理8000W数据记录,这个字段没有索引。的更多相关文章

  1. django之 使用views.py里面的函数对表进行增删改查 内容(models.py中表的创建、views.py中函数的使用,基于对象的跨表查询)

    models之对于表的创建有以下几种: 一对一:ForeignKey("Author",unique=True),  OneToOneField("Author" ...

  2. 数据库实例: STOREBOOK > 数据文件/退回字段/重做日志组|管理员

    ylbtech-Oracle:数据库实例: STOREBOOK  > 数据文件/退回字段/重做日志组|管理员 数据文件/退回字段/重做日志组|管理员 1. 数据库实例: STOREBOOK  & ...

  3. Oracle中暂时表空间的清理

    作者:iamlaosong Oracle暂时表空间主要用来做查询和存放一些缓冲区数据. 暂时表空间消耗的主要原因是须要对查询的中间结果进行排序.暂时表空间的主要作用: 索引create或rebuild ...

  4. zabbix的历史数据存储到elasticsearch中

    基本配置项 https://www.jianshu.com/p/bffca8128e8f 官方说这个实验性的功能支持es的版本是5.0.x - > 6.1.x,如果使用早期或更高版本的Elast ...

  5. [LeetCode]24. Swap Nodes in Pairs两两交换链表中的节点

    Given a linked list, swap every two adjacent nodes and return its head. Example: Given 1->2->3 ...

  6. LeetCode 24. Swap Nodes in Pairs (两两交换链表中的节点)

    题目标签:Linked List 题目给了我们一组 linked list,让我们把每对nodes 互换位置. 新键一个dummy node,然后遍历list,每次建立 s1 和 s2 记录两个点,然 ...

  7. mysql将一个库中表的某几个字段插入到另一个库中的表

    insert into dbname1.tablename1(filed1,filed2,filed3) select filed1,filed2,filed3from dbname2.tablena ...

  8. Html 中表单提交的一些知识总结——防止表单自动提交,以及submit和button提交表单的区别

    转自:http://jackaudrey.blog.163.com/blog/static/1314217882010590041833/ 在页面中有多个input type="text&q ...

  9. 数据库中表的位置,在sysdatabases中

    name dbid sid mode status status2 crdate reserved category cmptlevel filename version master :: :: C ...

随机推荐

  1. HDU 2685 I won't tell you this is about number theory

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2685 题意:求gcd(a^m - 1, a^n - 1) mod k 思路:gcd(a^m - 1, ...

  2. (转载) css实现小三角(尖角)

    在各种网站里面,我们会经常看到类似于这样的尖角:(示例:新浪微博) 它实现的方式有多种,哪种才是最简单的?哪种才是最优秀的?首先我声明一下,我还不清楚这个东西具体叫什么名字(哪位知道还望告知),暂且叫 ...

  3. DRAM与NAND Flash产业六大趋势预测分析

    集邦科技(TrendForce)旗下的分析部门DRAMeXchange的研究,针对对DRAM与NANDFlash产业的长久观察下,提出了对2012-2015年间产业发展的六大趋势预测:     趋势一 ...

  4. ARM Cortex M3(V7-M架构)硬件启动程序 一

    Cortex-m3启动代码分析笔记 启动代码文件名是STM32F10X.S,它的作用先总结下,然后再分析. 启动代码作用一般是: 1)堆和栈的初始化: 2)中断向量表定义: 3)地址重映射及中断向量表 ...

  5. 关于ajax中async参数的感悟

    async,这个参数默认为true. 就是异步去处理信息. 当把它设置为false的时候,就是同步去处理数据了. var current_lead_id = '<?php echo $curre ...

  6. EOF 空格问题

    mysql -u $USER -p${PASSWORD} $DATABASE << EOF >/tmp/dd-$$ 2>/tmp/ddd-$$select *from $TAB ...

  7. $in的方法总结

    Ad.find({"_id":{$in:datas}},function(err,item){ if(err) console.log(err); //console.log(it ...

  8. saiku导出excel单元格格式与中文列宽自动适应

    在saiku导出excel后打开发现单元格的整数也显示为小数,并且含有中文的列宽没有自动适应,解决办法如下: 打开ExcelWorksheetBuilder.java文件,找到applyCellFor ...

  9. ubuntu FTP服务安装

    //安装vsftp apt-get install vsftpd -y //增加账号 //1 查找 nologin位置 /usr/sbin/nologin useradd -d /alidata/ww ...

  10. 转发年浩大神的spfa算法

    http://www.cnblogs.com/superxuezhazha/p/5426624.html #include<iostream> #include<stdio.h> ...