我有 zabbix 2.2.1 和 252 个监控主机。目前,数据库位于本地,大小为 65GB,正在运行管家,清除超过 30 天的历史记录。条目被删除,磁盘空间没有增加。
请给我一些建议如何修复它。
问候
答案1
显然,这是数据库问题:
Zabbix 将所有处理和历史数据存储在数据库中,通常是 MySQL InnoDB 或 PostgreSQL(可能是 Oracle,但这不是典型情况,但应用相同的规则)。
a)MySQL innodb:
当 InnoDB 文件增大时,尤其innodb_file_per_table
是设置为off
- 时,除非您执行转储/恢复,否则它们可能永远不会恢复到实际大小。这是它的设计方式和工作方式:https://www.percona.com/blog/2013/09/25/how-to-reclaim-space-in-innodb-when-innodb_file_per_table-is-on/
b)PostgreSQL:
回收磁盘空间需要一些时间,但除非您vacuum
在桌子上:http://www.postgresql.org/docs/9.4/static/sql-vacuum.html
Autovacuum 也可用:http://www.postgresql.org/docs/9.4/static/runtime-config-autovacuum.html
这里是一个很好的手册和不同方法的比较:http://www.linuxinsight.com/optimize_postgresql_database_size.html