如何对zabbix mysql做分区表

如何对zabbix mysql做分区表,第1张

关于zabbix和MySQL分区表

-

支持zabbix

2.0和2.2,mysql在有外键的表不支持分区表。在zabbix

2.0和2.2中history和trend表没有使用外键,因此是可以在这些表中做分区的。

Index

changes:

1.如果zabbix的数据库已经有了数据,更改索引可能需要一些时间,根据具体的数据量,需要的时间长短也不一样。

2.在某些版本的MySQL索引的改变会使整个表上读锁。貌似mysql

5.6没有这个限制。

所述第一步骤是修改几个索引以允许做分区,按照下面的命令:

mysql>

Alter

table

history_text

drop

primary

key,

add

index

(id),

drop

index

history_text_2,

add

index

history_text_2

(itemid,

id)

Query

OK,

0

rows

affected

(0.49

sec)

Records:

0

Duplicates:

0

Warnings:

0

mysql>

Alter

table

history_log

drop

primary

key,

add

index

(id),

drop

index

history_log_2,

add

index

history_log_2

(itemid,

id)

Query

OK,

0

rows

affected

(2.71

sec)

Records:

0

Duplicates:

0

Warnings:

0

Stored

Procedures:

下面开始填写存储过程,需要执行下面的几个存储过程语句,只要能看到"Query

OK,

0

rows

affected

(0.00

sec)"只能就没有什么问题了。

做过Zabbix的同学都知道,Zabbix通过专用的Agent或者SNMP收集相关的监控数据,然后存储到数据库里面实时在前台展示。Zabbix监控数据主要分为以下两类: 历史数据:history相关表,从history_uint表里面可以查询到设备监控项目的最大,最小和平均...

<pre name="code" class="html">Zabbix Housekeeper changes:

使用分区表需要关闭zabbix的history/trends的housekeeper。

Zabbix 2.0.x:

关闭housekeeper需要变更zabbix_server.conf配置文件:DisableHousekeeping=1.关闭了housekeeper,old events, audit entries, and user sessions也无法删除了。

Zabbix 2.2.x:

ZABBIX 2.2引入了更精确的housekeeper。所有的housekeeper配置在zabbix的web端更改,"Administration" ->"General" ,选择"Housekeeping" ,确保history和trends栏的"Enable internal housekeeping"的对勾去掉。

1. 保留历史数据

我们可以通过如下方式来设置保留数据的时长:

监控项(item)配置里

匹配更新监控项(item)

设置Housekeeper tasks

Housekeeper会定期删除过期的数据。如果数据不是特别有意义,建议你把保留时间设置短一些。可能你会说,那我想看我以前的数据图怎么办?好说,老数据一般不用精确到分秒,只要小时的平均数据即可,这样的话,趋势数据保留久一点即可。例如保存历史记录14天,趋势数据5年(5年,你孩子都从小学一年级到五年级了)

备注:如果history设置为0(设置为0的人是不想看历史数据或者硬盘没空间么?),zabbix只会获取item的值,然后用与触发器,然后就没有然后了,不会存到数据库的。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10833410.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-11
下一篇2023-05-11

发表评论

登录后才能评论

评论列表(0条)

    保存