mysql 删除zabbix_zabbix 清理历史数据

当Zabbix监控数据达到100G时,为减轻服务器负载,选择删除超过1个月的历史数据。通过停用Zabbix,使用MySQL删除特定时间点前的`history`和`history_uint`表数据,然后进行表优化。操作后,显著减少了数据占用的空间,但`history_log`表仍较大,计划进一步处理。
摘要由CSDN通过智能技术生成

项目上线不到一个月,zabbix数据居然快100G,监控项太多,数据量太大,zabbix负载重,暂时不想升级硬件,只好内部挖掘下,清除下历史数据;一般保留1个月的数据,zabbix这个项目只是做监控报警用,数据保留太多没太大参考意义;

一般都是这几个表太大, history, history_uint,history_log,有的直接了当直接清空表,简洁方便,不过要是有人需要参考数据,那还蛮尴尬的;有的做一个独立分表,做存储过程,蛮高效,不过项目不一样只做简单监控不必那么麻烦;

套路都一样:停掉zabbix,mysql添加skip new以便于删除数据后压缩存储空间,截取需要清除的时间点:

root@Testl]$ date +%s -d"20160929"

1475078400

mysql> delete from history where clock<1475078400;

Query OK, 36093 rows affected (43.64 sec)

mysql> delete from history_uint whereclock < 1475078400;

Query OK, 21501392 rows affected (25 min51.48 sec)

mysql> optimize table history;

Query OK, 12175692 rows affected (5 min9.16 sec)

Records: 12175692  Duplicates: 0 Warnings: 0

mysql> optimize table history_uint;

Query OK, 145195609 rows affected (54 min29.07 sec)

Records: 145195609  Duplicates: 0 Warnings: 0

漫长时间等待以后看下效果:

原来数据:

-rw-rw---- 1 mysql mysql 1.4G Oct 28 13:23history.ibd

-rw-rw---- 1 mysql mysql  12M Oct 28 13:23 items.ibd

-rw-rw---- 1 mysql mysql  96M Oct 28 13:23 events.ibd

-rw-rw---- 1 mysql mysql  17G Oct 28 13:23 history_uint.ibd

-rw-rw---- 1 mysql mysql  56G Oct 28 13:23 history_log.ibd

-rw-rw---- 1 mysql mysql 252M Oct 28 13:23 trends_uint.ibd

-rw-rw---- 1 mysql mysql  72M Oct 28 13:23 trends.ibd

-rw-rw---- 1 mysql mysql 112K Oct 28 13:59sessions.ibd

压缩中:

缩进过程生成/#sql-5f11_3.ibd文件,作业完毕就是history_uint.ibd文件;

find -size +50M -exec ls -lh {} ;

-rw-rw---- 1 mysql mysql 960M Oct 28 14:42./history.ibd

-rw-rw---- 1 mysql mysql 9.2G Oct 28 15:31./#sql-5f11_3.ibd

-rw-rw---- 1 mysql mysql 56G Oct 28 13:23./history_log.ibd

-rw-rw---- 1 mysql mysql 96M Oct 28 13:23 ./events.ibd

-rw-rw---- 1 mysql mysql 252M Oct 28 13:23./trends_uint.ibd

-rw-rw---- 1 mysql mysql 72M Oct 28 13:23./trends.ibd

-rw-rw---- 1 mysql mysql 17G Oct 28 14:59./history_uint.ibd

最终删两个表以后数据:

zabbix]$ find -size +50M -execls -lh {} ;

-rw-rw---- 1 mysql mysql 960M Oct 28 15:42./history.ibd

-rw-rw---- 1 mysql mysql 56G Oct 28 15:42./history_log.ibd

-rw-rw---- 1 mysql mysql 96M Oct 28 15:42./events.ibd

-rw-rw---- 1 mysql mysql 252M Oct 28 15:41./trends_uint.ibd

-rw-rw---- 1 mysql mysql 72M Oct 28 15:41./trends.ibd

-rw-rw---- 1 mysql mysql 11G Oct 28 15:42./history_uint.ibd

完了以后,重启mysql,zabbix,nginx试试;

看着history_log那么大好忧伤,准备truncate掉。以后可以做个脚本,每月定期执行删除记录;

原文链接:http://xpu2001.blog.51cto.com/89092021年02月07日66927

本文转自独弹古调  51CTO博客,原文链接:http://blog.51cto.com/hunkz/1966908,如需转载请自行联系原作者

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值