当前位置:首页 » 数据仓库 » 数据库监控点
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

数据库监控点

发布时间: 2022-08-26 08:44:19

Ⅰ 如何从Zabbix数据库中获取监控数据

Zabbix可以通过两种方式获取历史数据:
1.通过Zabbix前台获取历史数据
通过Zabbix前台查看历史数据非常简单,可以通过Monitoring->Lastest data的方式查看。也可以点击右上角的As plain test按钮保存成文本文件。

2.通过前台获取的数据进行处理和二次查询有很多限制,因此可以通过sql语句直接从后台DB查询数据。
首先大家应该熟悉SQL语句Select 常用用法:
SELECT [ALL | DISTINCT] Select_List [INTO [New_Table_name]
FROM { Table_name | View_name} [ [,{table2_name | view2_name}
[,...] ]
[ WHERE Serch_conditions ]
[ GROUP BY Group_by_list ]
[ HAVING Serch_conditions ]
[ ORDER BY Order_list [ASC| DEsC] ]

说明:
1)SELECT子句指定要查询的特定表中的列,它可以是*,表达式,列表等。
2)INTO子句指定要生成新的表。
3)FROM子句指定要查询的表或者视图。
4)WHERE子句用来限定查询的范围和条件。
5)GROUP BY子句指定分组查询子句。
6)HAVING子句用于指定分组子句的条件。
7)ORDER BY可以根据一个或者多个列来排序查询结果,在该子句中,既可以使用列名,也可以使用相对列号,ASC表示升序,DESC表示降序。
8)mysql聚合函数:sum(),count(),avg(),max(),avg()等都是聚合函数,当我们在用聚合函数的时候,一般都要用到GROUP BY 先进行分组,然后再进行聚合函数的运算。运算完后就要用到Having子句进行判断了,例如聚合函数的值是否大于某一个值等等。
从Zabbix数据库中查询监控项目方法,这里已查询主机的网卡流量为例子:
1)通过hosts表查找host的ID。
mysql> select host,hostid from hosts where host="WWW05";
+-------+--------+
| host | hostid |
+-------+--------+
| WWW05 | 10534 |
+-------+--------+
1 row in set (0.00 sec)

2)通过items表查找主的监控项和key以及itemid。
mysql> select itemid,name,key_ from items where hostid=10534 and key_="net.if.out[eth0]";
+--------+-----------------+------------------+
| itemid | name | key_ |
+--------+-----------------+------------------+
| 58860 | 发送流量: | net.if.out[eth0] |
+--------+-----------------+------------------+
1 row in set (0.00 sec)

3)通过itemid查询主机的监控项目(history_uint或者trends_uint),单位为M。
主机流入流量:
mysql> select from_unixtime(clock) as DateTime,round(value/1024/1024,2) as Traffic_in from history_uint where itemid="58855" and from_unixtime(clock)>='2014-09-20' and from_unixtime(clock)<'2014-09-21' limit 20;
+---------------------+------------+
| DateTime | Traffic_in |
+---------------------+------------+
| 2014-09-20 00:00:55 | 0.10 |
| 2014-09-20 00:01:55 | 0.09 |
| 2014-09-20 00:02:55 | 0.07 |
| 2014-09-20 00:03:55 | 0.05 |
| 2014-09-20 00:04:55 | 0.03 |
| 2014-09-20 00:05:55 | 0.06 |
| 2014-09-20 00:06:55 | 0.12 |
| 2014-09-20 00:07:55 | 0.05 |
| 2014-09-20 00:08:55 | 0.10 |
| 2014-09-20 00:09:55 | 0.10 |
| 2014-09-20 00:10:55 | 0.12 |
| 2014-09-20 00:11:55 | 0.12 |
| 2014-09-20 00:12:55 | 0.13 |
| 2014-09-20 00:13:55 | 3.16 |
| 2014-09-20 00:14:55 | 0.23 |
| 2014-09-20 00:15:55 | 0.24 |
| 2014-09-20 00:16:55 | 0.26 |
| 2014-09-20 00:17:55 | 0.23 |
| 2014-09-20 00:18:55 | 0.14 |
| 2014-09-20 00:19:55 | 0.16 |
+---------------------+------------+
20 rows in set (0.82 sec)

主机流出流量:
mysql> select from_unixtime(clock) as DateTime,round(value/1024/1024,2) as Traffic_out from history_uint where itemid="58860" and from_unixtime(clock)>='2014-09-20' and from_unixtime(clock)<'2014-09-21' limit 20;
+---------------------+-------------+
| DateTime | Traffic_out |
+---------------------+-------------+
| 2014-09-20 00:00:00 | 4.13 |
| 2014-09-20 00:01:00 | 3.21 |
| 2014-09-20 00:02:00 | 2.18 |
| 2014-09-20 00:03:01 | 1.61 |
| 2014-09-20 00:04:00 | 1.07 |
| 2014-09-20 00:05:00 | 0.92 |
| 2014-09-20 00:06:00 | 1.23 |
| 2014-09-20 00:07:00 | 2.76 |
| 2014-09-20 00:08:00 | 1.35 |
| 2014-09-20 00:09:00 | 3.11 |
| 2014-09-20 00:10:00 | 2.99 |
| 2014-09-20 00:11:00 | 2.68 |
| 2014-09-20 00:12:00 | 2.55 |
| 2014-09-20 00:13:00 | 2.89 |
| 2014-09-20 00:14:00 | 4.98 |
| 2014-09-20 00:15:00 | 6.56 |
| 2014-09-20 00:16:00 | 7.34 |
| 2014-09-20 00:17:00 | 6.81 |
| 2014-09-20 00:18:00 | 7.67 |
| 2014-09-20 00:19:00 | 4.11 |
+---------------------+-------------+
20 rows in set (0.74 sec)

4)如果是两台设备,汇总流量,假如公司出口有两台设备,可以用下面的SQL语句汇总每天的流量。下面SQL语句是汇总上面主机网卡的进出流量的。
mysql> select from_unixtime(clock,"%Y-%m-%d %H:%i") as DateTime,sum(round(value/1024/1024,2)) as Traffic_total from history_uint where itemid in (58855,58860) and from_unixtime(clock)>='2014-09-20'and from_unixtime(clock)<'2014-09-21' group by from_unixtime(clock,"%Y-%m-%d %H:%i") limit 20;
+------------------+---------------+
| DateTime | Traffic_total |
+------------------+---------------+
| 2014-09-20 00:00 | 4.23 |
| 2014-09-20 00:01 | 3.30 |
| 2014-09-20 00:02 | 2.25 |
| 2014-09-20 00:03 | 1.66 |
| 2014-09-20 00:04 | 1.10 |
| 2014-09-20 00:05 | 0.98 |
| 2014-09-20 00:06 | 1.35 |
| 2014-09-20 00:07 | 2.81 |
| 2014-09-20 00:08 | 1.45 |
| 2014-09-20 00:09 | 3.21 |
| 2014-09-20 00:10 | 3.11 |
| 2014-09-20 00:11 | 2.80 |
| 2014-09-20 00:12 | 2.68 |
| 2014-09-20 00:13 | 6.05 |
| 2014-09-20 00:14 | 5.21 |
| 2014-09-20 00:15 | 6.80 |
| 2014-09-20 00:16 | 7.60 |
| 2014-09-20 00:17 | 7.04 |
| 2014-09-20 00:18 | 7.81 |
| 2014-09-20 00:19 | 4.27 |
+------------------+---------------+
20 rows in set (1.52 sec)

5)查询一天中主机流量的最大值,最小值和平均值。
mysql> select date as DateTime,round(min(traffic)/2014/1024,2) as TotalMinIN,round(avg(traffic)/1024/1024,2) as TotalAvgIN,round(max(traffic)/1024/1024,2) as TotalMaxIN from (select from_unixtime(clock,"%Y-%m-%d") as date,sum(value) as traffic from history_uint where itemid in (58855,58860) and from_unixtime(clock)>='2014-09-20' and from_unixtime(clock)<'2014-09-21' group by from_unixtime(clock,"%Y-%m-%d %H:%i") ) tmp;
+------------+------------+------------+------------+
| DateTime | TotalMinIN | TotalAvgIN | TotalMaxIN |
+------------+------------+------------+------------+
| 2014-09-20 | 0.01 | 4.63 | 191.30 |
+------------+------------+------------+------------+
1 row in set (1.74 sec)

6)查询主机组里面所有主机CPU Idle平均值(原始值)。
mysql> select from_unixtime(hi.clock,"%Y-%m-%d %H:%i") as DateTime,g.name as Group_Name,h.host as Host, hi.value as Cpu_Avg_Idle from hosts_groups hg join groups g on g.groupid = hg.groupid join items i on hg.hostid = i.hostid join hosts h on h.hostid=i.hostid join history hi on i.itemid = hi.itemid where g.name='上海机房--项目测试' and i.key_='system.cpu.util[,idle]' and from_unixtime(clock)>='2014-09-24' and from_unixtime(clock)<'2014-09-25' group by h.host,from_unixtime(hi.clock,"%Y-%m-%d %H:%i") limit 10;
+------------------+----------------------------+----------+--------------+
| DateTime | Group_Name | Host | Cpu_Avg_Idle |
+------------------+----------------------------+----------+--------------+
| 2014-09-24 00:02 | 上海机房--项目测试 | testwb01 | 94.3960 |
| 2014-09-24 00:07 | 上海机房--项目测试 | testwb01 | 95.2086 |
| 2014-09-24 00:12 | 上海机房--项目测试 | testwb01 | 95.4308 |
| 2014-09-24 00:17 | 上海机房--项目测试 | testwe01 | 95.4580 |
| 2014-09-24 00:22 | 上海机房--项目测试 | testwb01 | 95.4611 |
| 2014-09-24 00:27 | 上海机房--项目测试 | testwb01 | 95.2939 |
| 2014-09-24 00:32 | 上海机房--项目测试 | testwb01 | 96.0896 |
| 2014-09-24 00:37 | 上海机房--项目测试 | testwb01 | 96.5286 |
| 2014-09-24 00:42 | 上海机房--项目测试 | testwb01 | 96.8086 |
| 2014-09-24 00:47 | 上海机房--项目测试 | testwb01 | 96.6854 |
+------------------+----------------------------+----------+--------------+
10 rows in set (0.75 sec)

7)查询主机组里面所有主机 CPU Idle平均值(汇总值)。
mysql> select from_unixtime(hi.clock,"%Y-%m-%d %H:%i") as Date,g.name as Group_Name,h.host as Host, hi.value_avg as Cpu_Avg_Idle from hosts_groups hg join groups g on g.groupid = hg.groupid join items i on hg.hostid = i.hostid join hosts h on h.hostid=i.hostid join trends hi on i.itemid = hi.itemid where g.name='上海机房--项目测试' and i.key_='system.cpu.util[,idle]' and from_unixtime(clock)>='2014-09-10' and from_unixtime(clock)<'2014-09-11' group by h.host,from_unixtime(hi.clock,"%Y-%m-%d %H:%i") limit 10;
+------------------+----------------------------+----------+--------------+
| Date | Group_Name | Host | Cpu_Avg_Idle |
+------------------+----------------------------+----------+--------------+
| 2014-09-10 00:00 | 上海机房--项目测试 | testwb01 | 99.9826 |
| 2014-09-10 01:00 | 上海机房--项目测试 | testwb01 | 99.9826 |
| 2014-09-10 02:00 | 上海机房--项目测试 | testwb01 | 99.9825 |
| 2014-09-10 03:00 | 上海机房--项目测试 | testwb01 | 99.9751 |
| 2014-09-10 04:00 | 上海机房--项目测试 | testwb01 | 99.9843 |
| 2014-09-10 05:00 | 上海机房--项目测试 | testwb01 | 99.9831 |
| 2014-09-10 06:00 | 上海机房--项目测试 | testwb01 | 99.9829 |
| 2014-09-10 07:00 | 上海机房--项目测试 | testwb01 | 99.9843 |
| 2014-09-10 08:00 | 上海机房--项目测试 | testwb01 | 99.9849 |
| 2014-09-10 09:00 | 上海机房--项目测试 | testwb01 | 99.9849 |
+------------------+----------------------------+----------+--------------+
10 rows in set (0.01 sec)

8)其它与Zabbix相关的SQL语句。
查询主机已经添加但没有开启监控主机:
select host from hosts where status=1;

查询NVPS的值:
mysql> SELECT round(SUM(1.0/i.delay),2) AS qps FROM items i,hosts h WHERE i.status='0' AND i.hostid=h.hostid AND h.status='0' AND i.delay<>0;
+--------+
| qps |
+--------+
| 503.40 |
+--------+
1 row in set (0.11 sec)

望采纳

Ⅱ 数据库监控系统有什么特点

产业经济监测、预测及政策模拟平台主要面向跨境电商、电子商务、智能制造、产业人才培训等产业领域,通过平台的实时监测、产业指数监控及预测和产业经济政策模拟三大功能模块,协助省级、地市级政府相关部门进行产业经济政策的制定及调整,促进地方产业转型升级,提高经济发展质效。

Ⅲ openGauss数据库支持哪些监控工具

openGauss社区开发者提供基于grafana + prometheus + opengauss_exporter方式进行数据库节点监控,同时AI框架DBMind也提供类似能力

Ⅳ C# 怎么实现对数据库的实时监控

如果是监控对表格的数据的操作,可以使用触发器,如果是对整个数据库进行监控可以写个服务监控判断数据库是否正常运行以及对整个数据库的操作

Ⅳ 大量数据库的备份情况检查,如何监控

SQL SERVER数据库备份后的文件扩展名为.BAK,它可以恢复数据库,如果你要查看备份数据库中的数据,得先还原数据库,具体还原方法是:打开企业管理器,在数据库节点右键,选择“所有任务”---“还原数据库”,系统弹出“还原数据库”对话框,在“还原为数据库”下拉菜单中选择或录入一个新的数据库名称,选择“从设备(m)”圆按钮,在“参数”框中,单击“选择设备”按钮,此时,你选择你的备份数据库文件,单击确定,回到“还原数据库”界面,选择“选项”选项卡,确定你的逻辑文件名和物理文件名位置。确定系统即可还原数据库。
如果你需要查看文件中的内容,当然,你这个说法可能有错误,数据库备份文件还原后,还是在SQL SERVER中以存在,那么,你要查看里面的数据,这得需要用查询语句来实现或用企业管理器查询各表中数据内容或函数、过程等。。
查询语句可参考:SELECT * FROM SYSTEM

Ⅵ (急~~~)如何监控Oracle数据检查点的执行。就是数据库发生检查点的时候,可以得到这个信息。

top查看系统的checkpoint动作

我们可以通过将LOG_checkpointS_TO_ALERT设置成TRUE来打开checkpoint的trace,这样就可以跟踪checkpoint的操作了。
ALTER SYSTEM SET LOG_checkpointS_TO_ALERT=TRUE;

这设置以后系统的checkpoint将会被记录alert_$SID.log文件中。

在V$DATAFILE_HEADER里面也保存了发生完全checkpoint的时候一些相关信息,包括checkpoint发生时间、对应SCN已经checkpoint的次数。
select file# NO, status, tablespace_name, name, dbms_flashback.get_system_change_number CUR_SCN,
to_char(resetlogs_time, 'YYYY-MM-DD HH24:MI:SS') RST_DT, resetlogs_change# RST_SCN,
to_char(checkpoint_time, 'YYYY-MM-DD HH24:MI:SS') CKPT_DT, checkpoint_change# CKPT_SCN, checkpoint_count CKPT_CNT
from v$datafile_header;

/**
NO STATUS TABLESPACE_NAME CUR_SCN RST_DT RST_SCN CKPT_DT CKPT_SCN CKPT_CNT
--- ------- ---------------- -------- ------------------- -------- ------------------- --------- ---------
1 ONLINE SYSTEM 533541 2008-01-12 16:51:53 446075 2008-08-04 22:03:58 532354 65
2 ONLINE UNDOTBS1 533541 2008-01-12 16:51:53 446075 2008-08-04 22:03:58 532354 28
3 ONLINE SYSAUX 533541 2008-01-12 16:51:53 446075 2008-08-04 22:03:58 532354 65
4 ONLINE USERS 533541 2008-01-12 16:51:53 446075 2008-08-04 22:03:58 532354 64
5 ONLINE EXAMPLE 533541 2008-01-12 16:51:53 446075 2008-08-04 22:03:58 532354 24

Ⅶ 如何使用阿里云监控自定义监控本地数据库状态

如何使用阿里云监控自定义监控本地数据库状态
1、进入阿里云后台管理,点云监控--云服务监控 就可以看到一些监控数据。 2、使用行云管家,里面也有主机监控,可以帮助你查看主机使用情况,还可以使用微信监控查看。还有成本分析和,堡垒机的运维审计等功能。

Ⅷ 数据库监控是做些什么的

深入了解数据库响应对于单个web事务的效率。跟踪在应用程序中执行后台事务的数据库响应时间,这些事务是在后台线程中生成的。数据库性能监视器可以查明阻碍优化应用程序性能的SQL语句,并允许用户分析错误跟踪,在数据库性能问题影响您的业务之前解决它们。获取详细的性能指标,识别慢速的数据库调用、以及通过详细的图形和表格表示数据库的总体性能。

数据库监控是Applications Manager重要功能之一,它能够帮助数据库管理员(DBA)和系统管理员监控包含Oracle、SQL Server、MySQL、Sybase、IBM DB2等多种类异构型的数据库环境。作为无代理的数据库监控工具,Applications Manager通过执行数据库查询来采集性能数据。当数据库性能超过阈值时,生成告警通知管理员。通过直观丰富的数据库性能报表,DBA可以快速排查故障问题以及规划容量。网页链接

Ⅸ 如何有效的监控单点,集群的mysql

Mysql作为使用非常广泛的数据库,确实给我们带来了很多帮助,就像任何软件系统一样,一旦正式投入生产环境,那监控手段就不可或缺。如何有效的监控Mysql的运行情况,尤其是在复杂IT环境下就更显得迫切了,如Mysql集群部署; 1、单点Mysql的监控 到底一个Mysql服务我们应该监控哪些指标呢?每个人可能都有不同的见解,但下面这些指标是基本的: 当前已打开连接数:表示当前打开的数据库连接; 启动以来同时处理的最大连接数:表示自从数据库启动来同时处理的最大连接请求,这个值对于提供数据库的处理能力比较重要,下面是两个优化的量化经验: 假设数值tmpPercent =启动以来同时处理的最大连接数/ 设置的最大连接数 l 如果tmpPercent <= 0.1,则mySQL服务器最大连接数设置的过高了 l 如果tmpPercent > 90,则mySQL服务器最大连接数设置的过低了 锁等待率:如果该值 > 0.02,则mySQL服务器需要等待的表锁数有点多了, 如果当前数据库表类型是MyISAM请最好换成InnoDB类型; 表扫描率:如果该值 > 4000,则mySQL进行了太多表扫描, 很有可能是索引没建好, 增加read_buffer_size值会有一些好处, 但最好不要超过8MB; 北京运维技术出品的EOMP作为一个IT监控平台,提供了很多实用功能来帮助用户有效的运维各种IT资源,下面我们就如何通过EOMP对mysqlt进行有效监控做一个详细介绍: EOMP里mysql的详细监控界面如下: 上图中做标记的4个地方,都是EOMP反映给用户的重要监控信息。同时EOMP还可以监控Mysql中的数据库表信息,如下图: 通过对这些关键指标进行阀值、故障通知等设置,就可以在严重问题出现前有效的进行处理。EOMP阀值的设置很简单,在图中任何一个做标记*的监控指标处或是文本框没有灰掉的地方,点击鼠标右键弹出菜单,进行相关设置,如我们想对‘正在使用的连接数’这个指标进行如下设置:在上午8:00-下午7:00间,任意5分钟内,该指标至少有3次超过100,就发出问题级别的告警,并通过Email、手机短信等方式通知相关人员;下面是具体阀值和故障通知设置截图: 并且如果‘正在使用的连接数’确实发生了故障,我们可以通过刚才弹出菜单中的‘历史数据查询’功能,对这个监控指标的所有历史数据进行故障分析,下图是一次查询结果: 2、集群Mysql的监控 对于复杂的集群Mysql,就应该把它们通过某种方式放到一起来共同运维和监控,EOMP提供的‘视图’功能,就能很好完成这个任务,下图是EOMP一个简单Mysql集群的‘监控视图’: 上图中,我们把集群的两个Mysql服务放到一张视图里,同时把它们的一些关键监控指标也放到这张视图里,如响应时间、正在工作线程数等,通过这样一张视图,用户可以把所有反映这个Mysql集群健康情况的监控信息都放到一起,这在很大程度上方便用户的监控。 EOMP是以‘视图’为其设计核心,所以它的视图配置非常灵活,既可以是整个一个Mysql服务,也可以是某个Mysql服务的一个监控指标。越是复杂的监控要求,越是能体现出这种内在设计的灵活性。 ‘视图’不仅仅是个展现的窗口,它是个监控实体,如下图EOMP的首页所示,任何故障信息都是以‘视图’为载体的,这样用户在任何时候都可以看到自己能理解的监控信息,而不是什么什么设备或服务等。

Ⅹ 常用的数据库访问行为实时监控技术有哪些

数据库防火墙系统,串联部署在数据库服务器之前,解决数据库应用侧和运维侧两方面的问题,是一款基于数据库协议分析与控制技术的数据库安全防护系统。DBFirewall基于主动防御机制,实现数据库的访问行为控制、危险操作阻断、可疑行为审计。
数据库安全技术之一,数据库安全技术主要包括:数据库漏扫、数据库加密、数据库防火墙、数据脱敏、数据库安全审计系统。
数据库安全风险包括:刷库、拖库、撞库。
数据库安全攻击手段包括:SQL注入攻击。