首页 > 数据库 > mysql教程 > 如何查询 Zabbix 以显示主机模板关系?

如何查询 Zabbix 以显示主机模板关系?

DDD
发布: 2024-11-29 01:17:11
原创
711 人浏览过

How to Query Zabbix to Show Host-Template Relationships?

在 Zabbix 中显示主机模板关系的查询

此查询有助于从 Zabbix 表中检索数据,以显示哪些主机使用特定模板。挑战在于主机和模板都存储在同一个表中,并且与主机的 11813 和模板的 11815 等 ID 混合。

为了解决这个问题,我们引入了hosts_templates 表,它建立连接主机和模板之间通过其三列:host_template ID、hostid 和 templateid。

hosts 表包括关键字段,如 hostid 和 姓名。虽然hosts表拥有templateid列,但它并没有被使用。

在hosts_templates表中,我们可以确定哪些主机使用哪些模板。然而,当我们需要将 ID 翻译成相应的名称时,挑战就出现了。

之前的尝试

以下初始查询旨在提供部分解决方案,但遇到了重复问题:

select name, name
  from hosts_templates
 inner join hosts on hosts_templates.hostid = hosts.hostid;

select name, name
  from hosts_templates
 inner join hosts on hosts_templates.templateid = hosts.hostid;
登录后复制

解决方案

该解决方案需要两个联接,每个联接具有不同的表别名:

SELECT h1.name as host_name, h2.name AS template_name
FROM hosts_template AS t
JOIN hosts AS h1 ON t.hostid = h1.hostid
JOIN hosts AS h2 ON t.hosttemplateid = h2.hostid
登录后复制

在此查询中, hosts_template 表的别名为 t,而hosts 表的别名为 h1 和 h2,以区分主机名和模板名字。

以上是如何查询 Zabbix 以显示主机模板关系?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板