• zabbix 库表介绍


    zabbix数据库表结构的重要性
    想理解zabbix的前端代码、做深入的二次开发,甚至的调优,那就不能不了解数据库的表结构了。

    我们这里采用的zabbix3.4、mysql,所以简单的说下我们mysql这边的表结构,其他环境不保证正确。

    1.  
      mysql> show tables;
    2.  
      +-----------------------+
    3.  
      | Tables_in_zabbix |
    4.  
      +-----------------------+
    5.  
      | acknowledges |
    6.  
      | actions |
    7.  
      | alerts |
    8.  
      | application_template |
    9.  
      | applications |
    10.  
      | auditlog |
    11.  
      | auditlog_details |
    12.  
      | autoreg_host |
    13.  
      | conditions |
    14.  
      | config |
    15.  
      | dbversion |
    16.  
      | dchecks |
    17.  
      | dhosts |
    18.  
      | drules |
    19.  
      | dservices |
    20.  
      | escalations |
    21.  
      | events |
    22.  
      | expressions |
    23.  
      | functions |
    24.  
      | globalmacro |
    25.  
      | globalvars |
    26.  
      | graph_discovery |
    27.  
      | graph_theme |
    28.  
      | graphs |
    29.  
      | graphs_items |
    30.  
      | group_discovery |
    31.  
      | group_prototype |
    32.  
      | groups |
    33.  
      | history |
    34.  
      | history_log |
    35.  
      | history_str |
    36.  
      | history_text |
    37.  
      | history_uint |
    38.  
      | host_discovery |
    39.  
      | host_inventory |
    40.  
      | hostmacro |
    41.  
      | hosts |
    42.  
      | hosts_groups |
    43.  
      | hosts_templates |
    44.  
      | housekeeper |
    45.  
      | httpstep |
    46.  
      | httpstepitem |
    47.  
      | httptest |
    48.  
      | httptestitem |
    49.  
      | icon_map |
    50.  
      | icon_mapping |
    51.  
      | ids |
    52.  
      | images |
    53.  
      | interface |
    54.  
      | interface_discovery |
    55.  
      | item_condition |
    56.  
      | item_discovery |
    57.  
      | items |
    58.  
      | items_applications |
    59.  
      | maintenances |
    60.  
      | maintenances_groups |
    61.  
      | maintenances_hosts |
    62.  
      | maintenances_windows |
    63.  
      | mappings |
    64.  
      | media |
    65.  
      | media_type |
    66.  
      | opcommand |
    67.  
      | opcommand_grp |
    68.  
      | opcommand_hst |
    69.  
      | opconditions |
    70.  
      | operations |
    71.  
      | opgroup |
    72.  
      | opmessage |
    73.  
      | opmessage_grp |
    74.  
      | opmessage_usr |
    75.  
      | optemplate |
    76.  
      | profiles |
    77.  
      | proxy_autoreg_host |
    78.  
      | proxy_dhistory |
    79.  
      | proxy_history |
    80.  
      | regexps |
    81.  
      | rights |
    82.  
      | screens |
    83.  
      | screens_items |
    84.  
      | scripts |
    85.  
      | service_alarms |
    86.  
      | services |
    87.  
      | services_links |
    88.  
      | services_times |
    89.  
      | sessions |
    90.  
      | slides |
    91.  
      | slideshows |
    92.  
      | sysmap_element_url |
    93.  
      | sysmap_url |
    94.  
      | sysmaps |
    95.  
      | sysmaps_elements |
    96.  
      | sysmaps_link_triggers |
    97.  
      | sysmaps_links |
    98.  
      | timeperiods |
    99.  
      | trends |
    100.  
      | trends_uint |
    101.  
      | trigger_depends |
    102.  
      | trigger_discovery |
    103.  
      | triggers |
    104.  
      | user_history |
    105.  
      | users |
    106.  
      | users_groups |
    107.  
      | usrgrp |
    108.  
      | valuemaps |
    109.  
      +-----------------------+

    actions

    actions表记录了当触发器触发时,需要采用的动作。

    1.  
      mysql> desc actions;
    2.  
      +---------------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +---------------+---------------------+------+-----+---------+-------+
    5.  
      | actionid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | name | varchar(255) | NO | | | |
    7.  
      | eventsource | int(11) | NO | MUL | 0 | |
    8.  
      | evaltype | int(11) | NO | | 0 | |
    9.  
      | status | int(11) | NO | | 0 | |
    10.  
      | esc_period | int(11) | NO | | 0 | |
    11.  
      | def_shortdata | varchar(255) | NO | | | |
    12.  
      | def_longdata | blob | NO | | NULL | |
    13.  
      | recovery_msg | int(11) | NO | | 0 | |
    14.  
      | r_shortdata | varchar(255) | NO | | | |
    15.  
      | r_longdata | blob | NO | | NULL | |
    16.  
      +---------------+---------------------+------+-----+---------+-------+

    alerts

    alerts 表保存了历史的告警事件,可以从这个表里面去做一些统计分析,例如某个部门、
    某人、某类时间的告警统计,以及更深入的故障发生、恢复时间,看你想怎么用了。

    1.  
      mysql> desc alerts;
    2.  
      +-------------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +-------------+---------------------+------+-----+---------+-------+
    5.  
      | alertid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | actionid | bigint(20) unsigned | NO | MUL | 0 | |
    7.  
      | eventid | bigint(20) unsigned | NO | MUL | 0 | |
    8.  
      | userid | bigint(20) unsigned | NO | MUL | 0 | |
    9.  
      | clock | int(11) | NO | PRI | 0 | |
    10.  
      | mediatypeid | bigint(20) unsigned | NO | MUL | 0 | |
    11.  
      | sendto | varchar(100) | NO | | | |
    12.  
      | subject | varchar(255) | NO | | | |
    13.  
      | message | blob | NO | | NULL | |
    14.  
      | status | int(11) | NO | MUL | 0 | |
    15.  
      | retries | int(11) | NO | | 0 | |
    16.  
      | error | varchar(128) | NO | | | |
    17.  
      | nextcheck | int(11) | NO | | 0 | |
    18.  
      | esc_step | int(11) | NO | | 0 | |
    19.  
      | alerttype | int(11) | NO | | 0 | |
    20.  
      +-------------+---------------------+------+-----+---------+-------+

    config

    config表保存了全局的参数,前端包括后端也是,很多情况下会查询改表的参数的,例如用户的自定义主题、
    登陆认证类型等,非常重要,

    不过对我们做数据分析意义不大。

    1.  
      mysql> desc config;
    2.  
      +-------------------------+---------------------+------+-----+-----------------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +-------------------------+---------------------+------+-----+-----------------+-------+
    5.  
      | configid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | alert_history | int(11) | NO | | 0 | |
    7.  
      | event_history | int(11) | NO | | 0 | |
    8.  
      | refresh_unsupported | int(11) | NO | | 0 | |
    9.  
      | work_period | varchar(100) | NO | | 1-5,00:00-24:00 | |
    10.  
      | alert_usrgrpid | bigint(20) unsigned | NO | | 0 | |
    11.  
      | event_ack_enable | int(11) | NO | | 1 | |
    12.  
      | event_expire | int(11) | NO | | 7 | |
    13.  
      | event_show_max | int(11) | NO | | 100 | |
    14.  
      | default_theme | varchar(128) | NO | | default.css | |
    15.  
      | authentication_type | int(11) | NO | | 0 | |
    16.  
      | ldap_host | varchar(255) | NO | | | |
    17.  
      | ldap_port | int(11) | NO | | 389 | |
    18.  
      | ldap_base_dn | varchar(255) | NO | | | |
    19.  
      | ldap_bind_dn | varchar(255) | NO | | | |
    20.  
      | ldap_bind_password | varchar(128) | NO | | | |
    21.  
      | ldap_search_attribute | varchar(128) | NO | | | |
    22.  
      | dropdown_first_entry | int(11) | NO | | 1 | |
    23.  
      | dropdown_first_remember | int(11) | NO | | 1 | |
    24.  
      | discovery_groupid | bigint(20) unsigned | NO | | 0 | |
    25.  
      | max_in_table | int(11) | NO | | 50 | |
    26.  
      | search_limit | int(11) | NO | | 1000 | |
    27.  
      +-------------------------+---------------------+------+-----+-----------------+-------+

    functions

    function 表时非常重要的一个表了,记录了trigger中使用的表达式,例如max、last、nodata等函数。

    但其实这个表说他重要时因为同时记录了trigger、itemid,那就可以做一些API的开发了,例如根据
    IP 茶香改IP的所有trigger,我记得1.8的版本的API是无法实现我说的这个功能的,那只能利用
    function表去自己查询了。

    1.  
      mysql> desc functions ;
    2.  
      +------------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +------------+---------------------+------+-----+---------+-------+
    5.  
      | functionid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | itemid | bigint(20) unsigned | NO | MUL | 0 | |
    7.  
      | triggerid | bigint(20) unsigned | NO | MUL | 0 | |
    8.  
      | lastvalue | varchar(255) | YES | | NULL | |
    9.  
      | function | varchar(12) | NO | | | |
    10.  
      | parameter | varchar(255) | NO | | 0 | |
    11.  
      +------------+---------------------+------+-----+---------+-------+

    graphs

    graphs 表包含了用户定义的图表信息,同样的玩法可以是根据IP去查询改IP下的所有图表,
    不过似乎是有API的,我只是举例而已。

    1.  
      mysql> desc graphs;
    2.  
      +------------------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +------------------+---------------------+------+-----+---------+-------+
    5.  
      | graphid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | name | varchar(128) | NO | MUL | | |
    7.  
      | width | int(11) | NO | | 0 | |
    8.  
      | height | int(11) | NO | | 0 | |
    9.  
      | yaxismin | double(16,4) | NO | | 0.0000 | |
    10.  
      | yaxismax | double(16,4) | NO | | 0.0000 | |
    11.  
      | templateid | bigint(20) unsigned | NO | | 0 | |
    12.  
      | show_work_period | int(11) | NO | | 1 | |
    13.  
      | show_triggers | int(11) | NO | | 1 | |
    14.  
      | graphtype | int(11) | NO | | 0 | |
    15.  
      | show_legend | int(11) | NO | | 0 | |
    16.  
      | show_3d | int(11) | NO | | 0 | |
    17.  
      | percent_left | double(16,4) | NO | | 0.0000 | |
    18.  
      | percent_right | double(16,4) | NO | | 0.0000 | |
    19.  
      | ymin_type | int(11) | NO | | 0 | |
    20.  
      | ymax_type | int(11) | NO | | 0 | |
    21.  
      | ymin_itemid | bigint(20) unsigned | NO | | 0 | |
    22.  
      | ymax_itemid | bigint(20) unsigned | NO | | 0 | |
    23.  
      +------------------+---------------------+------+-----+---------+-------+

    graphs_items

    graphs_items 保存了属于某个图表的所有的监控项信息。

    1.  
      mysql> desc graphs_items;
    2.  
      +-------------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +-------------+---------------------+------+-----+---------+-------+
    5.  
      | gitemid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | graphid | bigint(20) unsigned | NO | MUL | 0 | |
    7.  
      | itemid | bigint(20) unsigned | NO | MUL | 0 | |
    8.  
      | drawtype | int(11) | NO | | 0 | |
    9.  
      | sortorder | int(11) | NO | | 0 | |
    10.  
      | color | varchar(6) | NO | | 009600 | |
    11.  
      | yaxisside | int(11) | NO | | 1 | |
    12.  
      | calc_fnc | int(11) | NO | | 2 | |
    13.  
      | type | int(11) | NO | | 0 | |
    14.  
      | periods_cnt | int(11) | NO | | 5 | |
    15.  
      +-------------+---------------------+------+-----+---------+-------+

    groups

    groups 没啥说的,都懂,就是保存了组名和组的ID 。

    1.  
      mysql> desc groups ;
    2.  
      +----------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +----------+---------------------+------+-----+---------+-------+
    5.  
      | groupid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | name | varchar(64) | NO | MUL | | |
    7.  
      | internal | int(11) | NO | | 0 | |
    8.  
      +----------+---------------------+------+-----+---------+-------+

    history 、history_str、history_log 、history_uint_sync等

    这部分表都差不多,唯一不同的是保存的数据类型,history_str保存的数据
    类型就算str即字符类型的。这个是和采集时设置的数据类型一致的。

    需要注意的时,因为history表有这么多的类型,那自己写报表系统等去查询
    数据时,就需要判断下数据的采集类型,如果查错了表,那肯定时没有数据的。

    1.  
      mysql> desc history;
    2.  
      +--------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +--------+---------------------+------+-----+---------+-------+
    5.  
      | itemid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | clock | int(11) | NO | PRI | 0 | |
    7.  
      | value | double(16,4) | NO | | 0.0000 | |
    8.  
      +--------+---------------------+------+-----+---------+-------+
    9.  
       
    10.  
      mysql> desc history_str;
    11.  
      +--------+---------------------+------+-----+---------+-------+
    12.  
      | Field | Type | Null | Key | Default | Extra |
    13.  
      +--------+---------------------+------+-----+---------+-------+
    14.  
      | itemid | bigint(20) unsigned | NO | MUL | 0 | |
    15.  
      | clock | int(11) | NO | | 0 | |
    16.  
      | value | varchar(255) | NO | | | |
    17.  
      +--------+---------------------+------+-----+---------+-------+

    接收item值时的时间值存放在两个字段内,大于1秒的部分存放找clock字段单位是秒(s),小于一秒的部分存放在ns字段单位是纳秒(ns)。

    两个字段相加的值才是接收item值时的时间值,一般不用关心小于1秒的部分。

    trends、trends_uint

    trends 也是保存了历史数据用的,和history不同的时,trends表仅仅保存了
    小时平均的值,即你可以理解为是history表的数据压缩。所以trends表也有
    很多的类型,对应history。

    值的注意的trends和history表这两类表数据量都非常大,我们一天大概就要有
    40G 的数据。

    所以注意定是去做压缩、删除。

    1.  
      mysql> desc trends;
    2.  
      +-----------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +-----------+---------------------+------+-----+---------+-------+
    5.  
      | itemid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | clock | int(11) | NO | PRI | 0 | |
    7.  
      | num | int(11) | NO | | 0 | |
    8.  
      | value_min | double(16,4) | NO | | 0.0000 | |
    9.  
      | value_avg | double(16,4) | NO | | 0.0000 | |
    10.  
      | value_max | double(16,4) | NO | | 0.0000 | |
    11.  
      +-----------+---------------------+------+-----+---------+-------+
    12.  
       
    13.  
      mysql> desc trends_uint;
    14.  
      +-----------+---------------------+------+-----+---------+-------+
    15.  
      | Field | Type | Null | Key | Default | Extra |
    16.  
      +-----------+---------------------+------+-----+---------+-------+
    17.  
      | itemid | bigint(20) unsigned | NO | PRI | 0 | |
    18.  
      | clock | int(11) | NO | PRI | 0 | |
    19.  
      | num | int(11) | NO | | 0 | |
    20.  
      | value_min | bigint(20) unsigned | NO | | 0 | |
    21.  
      | value_avg | bigint(20) unsigned | NO | | 0 | |
    22.  
      | value_max | bigint(20) unsigned | NO | | 0 | |
    23.  
      +-----------+---------------------+------+-----+---------+-------+

    hosts

    hosts 非常重要,保存了每个agent、proxy等的IP 、hostid、状态、IPMI等信息,
    几乎是记录了一台设备的所有的信息。

    当然hostid是当中非常非常重要的信息,其他的表一般都时关联hostid的。

    1.  
      mysql> desc hosts;
    2.  
      +--------------------+---------------------+------+-----+-----------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +--------------------+---------------------+------+-----+-----------+-------+
    5.  
      | hostid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | proxy_hostid | bigint(20) unsigned | NO | MUL | 0 | |
    7.  
      | host | varchar(64) | NO | MUL | | |
    8.  
      | dns | varchar(64) | NO | | | |
    9.  
      | useip | int(11) | NO | | 1 | |
    10.  
      | ip | varchar(39) | NO | | 127.0.0.1 | |
    11.  
      | port | int(11) | NO | | 10050 | |
    12.  
      | status | int(11) | NO | MUL | 0 | |
    13.  
      | disable_until | int(11) | NO | | 0 | |
    14.  
      | error | varchar(128) | NO | | | |
    15.  
      | available | int(11) | NO | | 0 | |
    16.  
      | errors_from | int(11) | NO | | 0 | |
    17.  
      | lastaccess | int(11) | NO | | 0 | |
    18.  
      | inbytes | bigint(20) unsigned | NO | | 0 | |
    19.  
      | outbytes | bigint(20) unsigned | NO | | 0 | |
    20.  
      | useipmi | int(11) | NO | | 0 | |
    21.  
      | ipmi_port | int(11) | NO | | 623 | |
    22.  
      | ipmi_authtype | int(11) | NO | | 0 | |
    23.  
      | ipmi_privilege | int(11) | NO | | 2 | |
    24.  
      | ipmi_username | varchar(16) | NO | | | |
    25.  
      | ipmi_password | varchar(20) | NO | | | |
    26.  
      | ipmi_disable_until | int(11) | NO | | 0 | |
    27.  
      | ipmi_available | int(11) | NO | | 0 | |
    28.  
      | snmp_disable_until | int(11) | NO | | 0 | |
    29.  
      | snmp_available | int(11) | NO | | 0 | |
    30.  
      | maintenanceid | bigint(20) unsigned | NO | | 0 | |
    31.  
      | maintenance_status | int(11) | NO | | 0 | |
    32.  
      | maintenance_type | int(11) | NO | | 0 | |
    33.  
      | maintenance_from | int(11) | NO | | 0 | |
    34.  
      | ipmi_ip | varchar(64) | NO | | 127.0.0.1 | |
    35.  
      | ipmi_errors_from | int(11) | NO | | 0 | |
    36.  
      | snmp_errors_from | int(11) | NO | | 0 | |
    37.  
      | ipmi_error | varchar(128) | NO | | | |
    38.  
      | snmp_error | varchar(128) | NO | | | |
    39.  
      +--------------------+---------------------+------+-----+-----------+-------+

    其实1.0的版本中,是没有这么多的字段的,好像只有hostid、host、status、disable_until
    等几个字段,但1.8已经如此丰富了。

    hosts_groups

    hosts_groups 保存了host(主机)与host groups(主机组)的关联关系。

    这部分信息可以在我们自己做一些批量查询,例如查询关联到某个主机组的所有
    设备的IP 、存活状态等,进一步去查询该批量设备的load、IO、mem等统计信息。

    我之前做的一个简单的报表就是例如了这部分的信息去查询某个业务线下所有设备
    的一周统计信息,当然了是在同一个主机组或者模版组才可以的。

    1.  
      mysql> desc hosts_groups ;
    2.  
      +-------------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +-------------+---------------------+------+-----+---------+-------+
    5.  
      | hostgroupid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | hostid | bigint(20) unsigned | NO | MUL | 0 | |
    7.  
      | groupid | bigint(20) unsigned | NO | MUL | 0 | |
    8.  
      +-------------+---------------------+------+-----+---------+-------+

    items

    items 表保存了采集项的信息。

    1.  
      mysql> desc items ;
    2.  
      +-----------------------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +-----------------------+---------------------+------+-----+---------+-------+
    5.  
      | itemid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | type | int(11) | NO | | 0 | |
    7.  
      | snmp_community | varchar(64) | NO | | | |
    8.  
      | snmp_oid | varchar(255) | NO | | | |
    9.  
      | snmp_port | int(11) | NO | | 161 | |
    10.  
      | hostid | bigint(20) unsigned | NO | MUL | 0 | |
    11.  
      | description | varchar(255) | NO | | | |
    12.  
      | key_ | varchar(255) | NO | | | |
    13.  
      | delay | int(11) | NO | | 0 | |
    14.  
      | history | int(11) | NO | | 90 | |
    15.  
      | trends | int(11) | NO | | 365 | |
    16.  
      | lastvalue | varchar(255) | YES | | NULL | |
    17.  
      | lastclock | int(11) | YES | | NULL | |
    18.  
      | prevvalue | varchar(255) | YES | | NULL | |
    19.  
      | status | int(11) | NO | MUL | 0 | |
    20.  
      | value_type | int(11) | NO | | 0 | |
    21.  
      | trapper_hosts | varchar(255) | NO | | | |
    22.  
      | units | varchar(10) | NO | | | |
    23.  
      | multiplier | int(11) | NO | | 0 | |
    24.  
      | delta | int(11) | NO | | 0 | |
    25.  
      | prevorgvalue | varchar(255) | YES | | NULL | |
    26.  
      | snmpv3_securityname | varchar(64) | NO | | | |
    27.  
      | snmpv3_securitylevel | int(11) | NO | | 0 | |
    28.  
      | snmpv3_authpassphrase | varchar(64) | NO | | | |
    29.  
      | snmpv3_privpassphrase | varchar(64) | NO | | | |
    30.  
      | formula | varchar(255) | NO | | 1 | |
    31.  
      | error | varchar(128) | NO | | | |
    32.  
      | lastlogsize | int(11) | NO | | 0 | |
    33.  
      | logtimefmt | varchar(64) | NO | | | |
    34.  
      | templateid | bigint(20) unsigned | NO | MUL | 0 | |
    35.  
      | valuemapid | bigint(20) unsigned | NO | | 0 | |
    36.  
      | delay_flex | varchar(255) | NO | | | |
    37.  
      | params | text | NO | | NULL | |
    38.  
      | ipmi_sensor | varchar(128) | NO | | | |
    39.  
      | data_type | int(11) | NO | | 0 | |
    40.  
      | authtype | int(11) | NO | | 0 | |
    41.  
      | username | varchar(64) | NO | | | |
    42.  
      | password | varchar(64) | NO | | | |
    43.  
      | publickey | varchar(64) | NO | | | |
    44.  
      | privatekey | varchar(64) | NO | | | |
    45.  
      | mtime | int(11) | NO | | 0 | |
    46.  
      +-----------------------+---------------------+------+-----+---------+-------+

    media

    media 保存了某个用户的media配置项,即对应的告警方式。

    1.  
      mysql> desc media;
    2.  
      +-------------+---------------------+------+-----+-----------------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +-------------+---------------------+------+-----+-----------------+-------+
    5.  
      | mediaid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | userid | bigint(20) unsigned | NO | MUL | 0 | |
    7.  
      | mediatypeid | bigint(20) unsigned | NO | MUL | 0 | |
    8.  
      | sendto | varchar(100) | NO | | | |
    9.  
      | active | int(11) | NO | | 0 | |
    10.  
      | severity | int(11) | NO | | 63 | |
    11.  
      | period | varchar(100) | NO | | 1-7,00:00-23:59 | |
    12.  
      +-------------+---------------------+------+-----+-----------------+-------+

    media_type

    media_type 表与media 表不同的是media_type 记录了某个告警方式对应的脚步等的存放路径。

    1.  
      mysql> desc media_type;
    2.  
      +-------------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +-------------+---------------------+------+-----+---------+-------+
    5.  
      | mediatypeid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | type | int(11) | NO | | 0 | |
    7.  
      | description | varchar(100) | NO | | | |
    8.  
      | smtp_server | varchar(255) | NO | | | |
    9.  
      | smtp_helo | varchar(255) | NO | | | |
    10.  
      | smtp_email | varchar(255) | NO | | | |
    11.  
      | exec_path | varchar(255) | NO | | | |
    12.  
      | gsm_modem | varchar(255) | NO | | | |
    13.  
      | username | varchar(255) | NO | | | |
    14.  
      | passwd | varchar(255) | NO | | | |
    15.  
      +-------------+---------------------+------+-----+---------+-------+

    media 与media_type 通过mediatypeid 键关联。

    profiles

    profiles 表保存了用户的一些配置项。

    1.  
      mysql> desc profiles ;
    2.  
      +-----------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +-----------+---------------------+------+-----+---------+-------+
    5.  
      | profileid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | userid | bigint(20) unsigned | NO | MUL | 0 | |
    7.  
      | idx | varchar(96) | NO | | | |
    8.  
      | idx2 | bigint(20) unsigned | NO | | 0 | |
    9.  
      | value_id | bigint(20) unsigned | NO | | 0 | |
    10.  
      | value_int | int(11) | NO | | 0 | |
    11.  
      | value_str | varchar(255) | NO | | | |
    12.  
      | source | varchar(96) | NO | | | |
    13.  
      | type | int(11) | NO | | 0 | |
    14.  
      +-----------+---------------------+------+-----+---------+-------+

    rights

    rights 表保存了用户组的权限信息,zabbix的权限一直也是我理不太清的地方,
    其实这个表里面有详细的记录。

    1.  
      mysql> desc rights;
    2.  
      +------------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +------------+---------------------+------+-----+---------+-------+
    5.  
      | rightid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | groupid | bigint(20) unsigned | NO | MUL | 0 | |
    7.  
      | permission | int(11) | NO | | 0 | |
    8.  
      | id | bigint(20) unsigned | YES | MUL | NULL | |
    9.  
      +------------+---------------------+------+-----+---------+-------+

    screens

    screens 表保存了用户定义的图片。

    1.  
      mysql> desc graphs;
    2.  
      +------------------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +------------------+---------------------+------+-----+---------+-------+
    5.  
      | graphid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | name | varchar(128) | NO | MUL | | |
    7.  
      | width | int(11) | NO | | 0 | |
    8.  
      | height | int(11) | NO | | 0 | |
    9.  
      | yaxismin | double(16,4) | NO | | 0.0000 | |
    10.  
      | yaxismax | double(16,4) | NO | | 0.0000 | |
    11.  
      | templateid | bigint(20) unsigned | NO | | 0 | |
    12.  
      | show_work_period | int(11) | NO | | 1 | |
    13.  
      | show_triggers | int(11) | NO | | 1 | |
    14.  
      | graphtype | int(11) | NO | | 0 | |
    15.  
      | show_legend | int(11) | NO | | 0 | |
    16.  
      | show_3d | int(11) | NO | | 0 | |
    17.  
      | percent_left | double(16,4) | NO | | 0.0000 | |
    18.  
      | percent_right | double(16,4) | NO | | 0.0000 | |
    19.  
      | ymin_type | int(11) | NO | | 0 | |
    20.  
      | ymax_type | int(11) | NO | | 0 | |
    21.  
      | ymin_itemid | bigint(20) unsigned | NO | | 0 | |
    22.  
      | ymax_itemid | bigint(20) unsigned | NO | | 0 | |
    23.  
      +------------------+---------------------+------+-----+---------+-------+

    screens_items

    同graphs_items。

    1.  
      mysql> desc screens_items;
    2.  
      +--------------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +--------------+---------------------+------+-----+---------+-------+
    5.  
      | screenitemid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | screenid | bigint(20) unsigned | NO | | 0 | |
    7.  
      | resourcetype | int(11) | NO | | 0 | |
    8.  
      | resourceid | bigint(20) unsigned | NO | | 0 | |
    9.  
      | width | int(11) | NO | | 320 | |
    10.  
      | height | int(11) | NO | | 200 | |
    11.  
      | x | int(11) | NO | | 0 | |
    12.  
      | y | int(11) | NO | | 0 | |
    13.  
      | colspan | int(11) | NO | | 0 | |
    14.  
      | rowspan | int(11) | NO | | 0 | |
    15.  
      | elements | int(11) | NO | | 25 | |
    16.  
      | valign | int(11) | NO | | 0 | |
    17.  
      | halign | int(11) | NO | | 0 | |
    18.  
      | style | int(11) | NO | | 0 | |
    19.  
      | url | varchar(255) | NO | | | |
    20.  
      | dynamic | int(11) | NO | | 0 | |
    21.  
      +--------------+---------------------+------+-----+---------+-------+

    sessions

    sessions 表很重要,保存了每个用户的sessions,在登陆、注销的时候均会操作
    该张表的。

    做cas等统一认证时,需要了解下该表和相关的登陆、验证流程。有兴趣的看我
    前面的文章吧。

    1.  
      mysql> desc sessions;
    2.  
      +------------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +------------+---------------------+------+-----+---------+-------+
    5.  
      | sessionid | varchar(32) | NO | PRI | | |
    6.  
      | userid | bigint(20) unsigned | NO | MUL | 0 | |
    7.  
      | lastaccess | int(11) | NO | | 0 | |
    8.  
      | status | int(11) | NO | | 0 | |
    9.  
      +------------+---------------------+------+-----+---------+-------+

    triggers

    triggers 顾名思义保存了trigger的所有信息。

    1.  
      mysql> desc triggers;
    2.  
      +-------------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +-------------+---------------------+------+-----+---------+-------+
    5.  
      | triggerid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | expression | varchar(255) | NO | | | |
    7.  
      | description | varchar(255) | NO | | | |
    8.  
      | url | varchar(255) | NO | | | |
    9.  
      | status | int(11) | NO | MUL | 0 | |
    10.  
      | value | int(11) | NO | MUL | 0 | |
    11.  
      | priority | int(11) | NO | | 0 | |
    12.  
      | lastchange | int(11) | NO | | 0 | |
    13.  
      | dep_level | int(11) | NO | | 0 | |
    14.  
      | comments | blob | NO | | NULL | |
    15.  
      | error | varchar(128) | NO | | | |
    16.  
      | templateid | bigint(20) unsigned | NO | | 0 | |
    17.  
      | type | int(11) | NO | | 0 | |
    18.  
      +-------------+---------------------+------+-----+---------+-------+

    trigger_depends

    trigger_depends 保存了trigger的依赖关系。

    1.  
      mysql> desc trigger_depends;
    2.  
      +----------------+---------------------+------+-----+---------+-------+
    3.  
      | Field | Type | Null | Key | Default | Extra |
    4.  
      +----------------+---------------------+------+-----+---------+-------+
    5.  
      | triggerdepid | bigint(20) unsigned | NO | PRI | 0 | |
    6.  
      | triggerid_down | bigint(20) unsigned | NO | MUL | 0 | |
    7.  
      | triggerid_up | bigint(20) unsigned | NO | MUL | 0 | |
    8.  
      +----------------+---------------------+------+-----+---------+-------+

    users

    不需要解释了,值的一提的部分用户配置会在该表中,例如auotlogin、autologout、
    url、theme等信息。

      1.  
        mysql> desc users;
      2.  
        +----------------+---------------------+------+-----+-------------+-------+
      3.  
        | Field | Type | Null | Key | Default | Extra |
      4.  
        +----------------+---------------------+------+-----+-------------+-------+
      5.  
        | userid | bigint(20) unsigned | NO | PRI | 0 | |
      6.  
        | alias | varchar(100) | NO | MUL | | |
      7.  
        | name | varchar(100) | NO | | | |
      8.  
        | surname | varchar(100) | NO | | | |
      9.  
        | passwd | char(32) | NO | | | |
      10.  
        | url | varchar(255) | NO | | | |
      11.  
        | autologin | int(11) | NO | | 0 | |
      12.  
        | autologout | int(11) | NO | | 900 | |
      13.  
        | lang | varchar(5) | NO | | en_gb | |
      14.  
        | refresh | int(11) | NO | | 30 | |
      15.  
        | type | int(11) | NO | | 0 | |
      16.  
        | theme | varchar(128) | NO | | default.css | |
      17.  
        | attempt_failed | int(11) | NO | | 0 | |
      18.  
        | attempt_ip | varchar(39) | NO | | | |
      19.  
        | attempt_clock | int(11) | NO | | 0 | |
      20.  
        | rows_per_page | int(11) | NO | | 50 | |
      21.  
  • 相关阅读:
    python多线程学习一
    https学习笔记三----OpenSSL生成root CA及签发证书
    https学习笔记二----基础密码学知识和python pycrypto库的介绍使用
    HTTPS学习笔记一----HTTPS的基础理论知识
    一只小鹅的2017
    python 全局变量的import机制
    一起来学设计模式-----工厂模式的实践
    一起来学设计模式-----创建型模式之抽象工厂
    一起来学设计模式-----创建型模式之工厂方法
    一起来学设计模式-----创建型模式之简单工厂
  • 原文地址:https://www.cnblogs.com/sunshine-long/p/12120034.html
Copyright © 2020-2023  润新知