1- 数据库表
+----------------------------+
| Tables_in_zabbix |
+----------------------------+
| acknowledges |
| actions |
| alerts |
| application_discovery |
| application_prototype |
| application_template |
| applications |
| auditlog |
| auditlog_details |
| autoreg_host |
| conditions |
| config |
| corr_condition |
| corr_condition_group |
| corr_condition_tag |
| corr_condition_tagpair |
| corr_condition_tagvalue |
| corr_operation |
| correlation |
| dbversion |
| dchecks |
| dhosts |
| drules |
| dservices |
| escalations |
| event_recovery |
| event_tag |
| events |
| expressions |
| functions |
| globalmacro |
| globalvars |
| graph_discovery |
| graph_theme |
| graphs |
| graphs_items |
| group_discovery |
| group_prototype |
| groups |
| history |
| history_log |
| history_str |
| history_text |
| history_uint |
| host_discovery |
| host_inventory |
| hostmacro |
| hosts |
| hosts_groups |
| hosts_templates |
| housekeeper |
| httpstep |
| httpstepitem |
| httptest |
| httptestitem |
| icon_map |
| icon_mapping |
| ids |
| images |
| interface |
| interface_discovery |
| item_application_prototype |
| item_condition |
| item_discovery |
| items |
| items_applications |
| maintenances |
| maintenances_groups |
| maintenances_hosts |
| maintenances_windows |
| mappings |
| media |
| media_type |
| opcommand |
| opcommand_grp |
| opcommand_hst |
| opconditions |
| operations |
| opgroup |
| opinventory |
| opmessage |
| opmessage_grp |
| opmessage_usr |
| optemplate |
| problem |
| problem_tag |
| profiles |
| proxy_autoreg_host |
| proxy_dhistory |
| proxy_history |
| regexps |
| rights |
| screen_user |
| screen_usrgrp |
| screens |
| screens_items |
| scripts |
| service_alarms |
| services |
| services_links |
| services_times |
| sessions |
| slides |
| slideshow_user |
| slideshow_usrgrp |
| slideshows |
| sysmap_element_url |
| sysmap_url |
| sysmap_user |
| sysmap_usrgrp |
| sysmaps |
| sysmaps_elements |
| sysmaps_link_triggers |
| sysmaps_links |
| task |
| task_close_problem |
| timeperiods |
| trends |
| trends_uint |
| trigger_depends |
| trigger_discovery |
| trigger_tag |
| triggers |
| users |
| users_groups |
| usrgrp |
| valuemaps |
+----------------------------+
127 rows in set (0.01 sec)
2- 数据表说明
actions表:
actions表记录了当触发器触发时,需要采用的动作。可以通过desc actions;来自行查看表结构
alerts表:
alerts 表保存了历史的报警事件。
config表:
config表保存了全局的参数
functions表:
function 表是非常重要的一个表了,记录了trigger中使用的表达式,例如max、last、nodata等函数。
graphs表:
graphs 表包含了用户定义的图表信息。
graphs_items表:
graphs_items 保存了属于某个图表的所有的监控项信息。
groups表:
groups 保存了组名和组的ID 。
history 、history_str、history_log 、history_uint_sync等:
这部分表都差不多,唯一不同的是保存的数据类型。存储着不同类型item的历史数据,最终1小时或者1天等短时间的绘图数据都从其中获取。
trends、trends_uint表:
保留历史数据用的,不过是趋势数据。储存着不同类型item的历史趋势数据,每隔一小时从历史数据中统计一次,并计算统计区间的平均值、最值。长时间区间的绘图数据的数据源。
hosts表:
hosts 非常重要,保存了每个agent、proxy等的IP 、hostid、状态、IPMI等信息, 几乎是记录了一台设备的所有的信息。其他的表一般都时关联hostid的。
hosts_groups表:
hosts_groups 保存了host(主机)与host groups(主机组)的关联关系。
items表:
items 表保存了采集项的信息。字段说明,itemid是每个绘图项目唯一标识,hostid每个主机的标识,name每个item的名字,delay数据采集间隔,history历史数据保存时间,status标识item的状态(0表示正常显示的item),units保存item的单位。
media表:
media 保存了某个用户的media配置项,即对应的告警方式。
media_type表:
media_type 表与media 表不同的是media_type 记录了某个告警方式对应的执行脚本,注意路径只是相对路径。media 与media_type 通过mediatypeid 键关联。
profiles表:
profiles 表保存了用户的一些配置项。
rights表:
rights 表保存了用户组的权限信息,zabbix的权限一直也是我理不太清的地方, 其实这个表里面有详细的记录。
screeens表:
screeens 表保存了用户定义的图片。
sessions表:
保存了每个用户的sessions,在登陆、注销的时候均会操作该张表的。
triggers表:
保存了trigger的所有信息。
trigger_depends表:
trigger_depends 保存了trigger的依赖关系。
2- 数据库优化
如果数据库和zabbix在一台机器,可以使用socket连接,速度会提高。
数据库zabbix来说,选择InnoDB引擎,效率是其它引擎的1.5倍
对history类型的(history、history_uint等)大表进行拆分操作,关闭housekeeper禁止自动定期清除历史记录数据,因为对于数据库特别是对于InnoDB引擎大数据删除貌似很蛋疼。
可以对数据库配置文件调优,因为都要提交到数据库中,当机器很多时,数据库压力会很大
如果还是太多,可以考虑将mysql单独一台,并设置读写分离,可以用中间件实现。