zabbix 清理历史数据

本文涉及的产品
RDS AI 助手,专业版
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
简介:

    项目上线不到一个月,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

完了以后,重启mysqlzabbixnginx试试;

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

原文链接:http://xpu2001.blog.51cto.com/890980/1866927




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





相关实践学习
自建数据库迁移到云数据库
本场景将引导您将网站的自建数据库平滑迁移至云数据库RDS。通过使用RDS,您可以获得稳定、可靠和安全的企业级数据库服务,可以更加专注于发展核心业务,无需过多担心数据库的管理和维护。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
存储 SQL 监控
修改Zabbix源码实现监控数据双写,满足业务需求!
虽然对接Elasticsearch后有诸多好处,但是它不往数据库写历史数据了,同时还不再计算趋势数据了。有这么一个场景...
修改Zabbix源码实现监控数据双写,满足业务需求!
|
JSON 监控 前端开发
python对接API二次开发高级实战案例解析:Zabbix API封装类实现获取认证密钥、所有主机组、所有主机、所有监控项和历史数据
python对接API二次开发高级实战案例解析:Zabbix API封装类实现获取认证密钥、所有主机组、所有主机、所有监控项和历史数据
853 0
|
存储 监控 Oracle
干货!Zabbix+ES怎么玩?如何应对海量级监控数据?一文带你玩转开源解决方案。
干货!Zabbix+ES怎么玩?如何应对海量级监控数据?一文带你玩转开源解决方案。
500 0
|
数据采集 监控 关系型数据库
ZABBIX监控容器内的MySQL数据
ZABBIX监控容器内的MySQL数据
677 0
ZABBIX监控容器内的MySQL数据
|
监控 数据库
|
Prometheus 监控 Cloud Native
WGCLOUD可以对接zabbix监控数据吗
不可以 WGCLOUD是属于独立一套监控平台体系,自研项目,不同于zabbix和prometheus,它自成体系,基于国内大众工程师和团队的实践,精心设计研发,多年积累,功能设计和操作习惯贴近国内人员使用习惯,使用起来有轻车熟路的感觉 WGCLOUD没有那么复杂的配置项,属于开箱即用的优秀项目,简单上手,性能效率也很彪悍
WGCLOUD可以对接zabbix监控数据吗
|
消息中间件 存储 运维
Zabbix与ELK整合实现对安全日志数据的实时监控告警
Zabbix与ELK整合实现对安全日志数据的实时监控告警
Zabbix与ELK整合实现对安全日志数据的实时监控告警
|
监控 关系型数据库 MySQL
zabbix2.2监控-清理zabbix 历史数据
zabbix运行一段时间之后,会留下大量的历史 数据,会发现zabbix的数据库一直在增大。运行3个月后笔者的数据库达到了5.7G,可能造成系统性能下降,查看历史数据时查询速度缓慢。 zabbix里面最大的表就是历史记录的表了,网上很多人都是写全部清空这些表的数据,其实我们可以按时间来删除里面的历史记录。
1299 0

推荐镜像

更多