zabbix清理历史数据
1.查看数据占用空间
cd /data/mysql/zabbix/ du -sh * | grep G
2.对应到数据库中就是history_uint和history两个表数据比较大
mysql> select table_name, (data_length+index_length)/1024/1024 as total_mb,table_rows from information_schema.tables where table_schema='zabbix' order by total_mb desc; +----------------------------+---------------+------------+ | table_name | total_mb | table_rows | +----------------------------+---------------+------------+ | history_uint | 2820.17187500 | 28546891 | | history | 2034.39062500 | 19045070 | | trends_uint | 119.59375000 | 1579101 | | trends | 107.67187500 | 1420596 |
3.清理数据,保留三个月的数据
mysql> delete from history where clock < 1669824000; mysql> delete from history_uint where clock < 1669824000; # delete操作有点慢
4.优化表
mysql> optimize table history;
mysql> optimize table history_uint;
5.数据分区
删除历史数据后,数据量还是很大,继续对数据库进行分区操作,提高效率,网上有写好的分区脚本,直接下载使用
wget https://dl.cactifans.com/zabbix/partitiontables_gt_zbx34.sh
修改脚本参数
# history和trends相关表数据量很大,一个是历史数据,一个是趋势数据,脚本中默认详情数据保留30天,趋势数据保留12个月,如需修改,请修改以下内容: # How long to keep the daily history daily_history_min=30 # How long to keep the monthly history (months) monthly_history_min=12 # 修改数据库连接信息 DBHOST=localhost DBUSER=zabbix DBPASS=xxx
增加脚本执行权限:chmod +x partitiontables_gt_zbx34.sh
关闭zabbix-server
执行脚本:./partitiontables_gt_zbx34.sh
一些事情一直在干,说不定以后就结果了呢
本文来自博客园,作者:chenjianwen,转载请注明原文链接:https://www.cnblogs.com/chenjw-note/p/17078213.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!