专栏名称: InfoQ
有内容的技术社区媒体。
专栏主题
分享
今天看啥  ›  专栏  ›  公众号  ›  InfoQ

[原创]2019 年最好用的 6 款数据库监控工具

InfoQ  · 公众号  · 2019-02-11 15:13
作者 | Renaud Larue-Langlois
译者 | 甜梨、无明

“数据就是一切!”我们都曾听过这种大胆的说法,但其实事实真是这样,而且数据还无处不在。如今,每个企业和组织发展都需要依赖大量的数据,数据也成为了企业最有价值的资产。为了让数据发挥最大的价值,通常我们都会采用数据库监控工具,本文将为大家介绍 6 款最好用的数据库监控工具。

在开始介绍这些工具之前,我们先简要介绍一下数据库监控的概念,然后谈论一下从硬件到存储过程中可监控的数据库元素,最后,我们将为大家推荐一些目前市面上可用、好用的数据库监控工具。(文末有开源监控工具推荐)

什么是数据库监控?

正如数据就是组织的一切,监控是网络管理员的一切。现代网络纷繁复杂,由众多组件构成,我们不可能关注到所有的东西,尤其是在大型企业或组织中,管理员通常坐在与服务器不同的房间里,这时就需要监视工具了。

监控数据库与监控其他 IT 组件没有什么不同。数据库监控的主要目标是确保数据在需要时是可用的。这听起来很简单,但实际操作却相当复杂,部分原因在于组件的数量和种类。

虽然数据库是一个抽象概念,但它是由非常具体的东西组成的。从硬件到软件,数据库监控工具必须始终确保所有组件都是可用的,并且在正常范围内运行。

需要监控哪些东西?

让我们更深入地了解一下数据库有哪些东西需要监控的。数据库最基本的元素是它所运行的硬件。就像任何一台计算机一样,这些硬件有很多可调整的参数。例如,我们需要考虑 CPU 负载、可用内存或处理器核心温度。实际上,监控数据库服务器与监控其他服务器没有什么不同。

需要监控的下一个组件是底层操作系统。有些数据库运行在 Windows 上,有些运行在 Linux 或其他 Unix 发行版上。无论是什么操作系统,都有几个重要的参数需要监控,例如磁盘空间或磁盘使用情况。就像硬件一样,操作系统级别的数据库监控与其他类型的监控也没有什么不同。

最后是对实际数据库的监控。从本质上说,数据库只是运行在服务器上的另一款软件。因此,最基本的监控就是要确保这款软件一直处于运行状态。但大多数工具的意义远不止于此,有些会检查数据库的结构,有些会测量数据库的响应时间,有些甚至可以执行测试用的存储过程。

最好的数据库监控工具

我们找到了目前市场上最好用的数据库监控工具,这些产品中大多数都是付费产品,但也有免费试用版。

1. SolarWinds Database Performance Analyzer for SQL Server

SolarWinds 是公认的网络和系统管理工具的最佳提供商之一。它提供了几乎涵盖所有主题的各种工具。该公司的旗舰产品“网络性能监视器(Network Performance Monitor)”一直名列最佳网络带宽监控工具之列。

SolarWinds Database Performance Analyzer(DPA)用于监控和分析 SQL 数据库实例。它采用了响应时间分析法,主要关注查询请求与数据库相应响应之间的时间,并通过分析等待类型和事件找出数据库的瓶颈。

免费试用:

https://www.addictivetips.com/go/database-performance-analyzer/

下载链接:

https://www.solarwinds.com/database-performance-analyzer

这个工具的界面十分易用,可以帮你快速、轻松地查找问题。可以在主屏幕上查看数据库实例、等待时间、查询建议、CPU(带有警告和关键警告)、内存、磁盘和会话等信息。

点进去还能查看特定数据库实例的趋势仪表盘,仪表盘以图形的形式显示用户在一个月内的总等待时间(你也可以选择查看平均或典型日等待时间)。在这张图表中,每种颜色代表一条单独的 SQL 语句,提供了运行时间最长的语句,十分直观。

DPA 提供了足够多的功能,以下是一些比较重要的特性。

单点监控所有数据库

DPA 可与微软 SQL 服务器以及大多数主要产品(包括 Oracle、SQL Server、MySQL、DB2 和 ASE)配合使用。它还支持物理和本地服务器、虚拟机(在 VMware 或 Hyper-V 中运行)和基于云的数据库。

高度可扩展

DPA 允许你根据需要监控任意数量的数据库实例。只需升级许可证,它就可以轻松地从一个实例扩展到一千个实例。

主动监控所有活跃会话

DPA 的原生轮询引擎记录了数据库实例中发生的所有事情,不会对数据库本身带来额外的负载,也不需要安装本地监控代理,从而降低(如果不是消除)DPA 可能会对数据库性能产生的影响。

跟踪、监控和分析数据库组件

DPA 可以自动关联查询、用户、文件、计划、对象、等待时间、存储和日期 / 时间 / 小时 / 分钟,以便即时发现和诊断问题。

数据库调优建议

DPA 可以为你提供有关调整单个数据库实例的建议,并确保它们始终运行在最佳状态。这是通过分析实例的所有参数并推荐优化某些查询或整个数据库实例的操作来实现的。

DPA 的起价为 1995 美元,根据要监控的数据库实例的数量和类型而有所不同。如果你想在购买之前试用该产品,可以使用功能齐全的 14 天试用版。

2. Paessler PRTG

Paessler Router Traffic Grapher(PRTG)可以监控 IT 基础设施的所有系统、设备、流量和应用程序。它是一个包罗万象的软件包,由于它在集成方面的特点,比很多网络监控工具更快、更容易安装。Paessler 声称可以在 2 分钟内开始进入监控状态。PRTG 提供了几种用户界面。你可以选择 Windows 企业控制台或基于 Ajax 的 Web 界面,以及适用于 Android、iOS 和 Windows Phone 的移动应用程序。

自动发现系统是 PRTG 提供的最好用的功能之一。它会扫描网段,并自动识别各种设备和系统,根据预定义的设备模板创建传感器。它提供了一个 map 功能,可以使用监控数据创建自定义 map,作为一种独特的数据显示方式。在警报方面,它们具有很高的灵活性,并且高度可定制。客户端应用程序可以直接接收推送通知,你还可以通过电子邮件或短信接收通知。它还提供了一组功能强大的 API,可让你编写自己的通知脚本。

这个程序可以监控很多数据库,如 Microsoft SQL、MySQL、Oracle 和 PostgreSQL。它通过使用预先配置的内置数据库传感器来实现监控。你可以使用这个工具来监控 SQL 查询的执行时间。它会测量从建立连接到连接结束所花费的时间,可以让你清楚地看到数据库在压力下的性能表现。

PRTG 的定价结构相对简单。它提供了一个免费版本,功能齐全,但最多只能监控 100 个传感器。一个参数算作一个传感器。监控 48 端口交换机的带宽需要 48 个传感器。同样,每个数据库实例都需要一个 SQL 传感器。如果传感器多于 100 个,你需要购买许可证。根据传感器数量的不同,价格从 1600 美元 500 个传感器到 14500 美元无限个传感器不等。它还提供了一个 30 天的试用版,不限传感器数量,但一旦试用期结束,将恢复到 100 个传感器的免费版本。

3. Idera Diagnostic Manager for SQL Server

Idera Diagnostic Manager for SQL Server(IDM)监控物理和虚拟环境中 SQL 数据库的性能。这个工具提供来自物理服务器、虚拟机及其底层主机硬件的性能统计信息、指标和警报。它监视多个操作参数,如 CPU、内存、硬盘使用情况和空间,以及网络使用情况。该产品还提供了对 SQL 查询的主动监控以及事务 SQL 监控。它还可以为 SQL 数据库的健康状况提供建议。

IDM 提供了基于 Web 的界面和适用于 Android、iOS 手机、平板电脑以及黑莓的移动应用程序。它提供了 SQL 服务器实例的实时和历史数据,允许管理员通过手机应用程序动态修改配置。虽然手机应用程序不如 Web 控制台功能丰富,但仍然可以执行多种管理任务,如查看和终止进程、根据需要启动和停止作业,以及运行查询来解决问题。

IDM 的其他功能包括使用 Management Pack 插件与 SCOM 集成、一个可以避免错误警报的预测警报系统,以及一个查询性能监控功能,该功能可以精确定位效率不高、性能不佳的查询。

IDM 的价格为每个数据库实例 1996 美元起,并提供了一个功能齐全的 14 天试用版。

4. SQL Power Tools

来自 SQL Power 公司的 SQL Power Tools 是一种无代理数据库性能分析解决方案。SQL Power 声称它对服务器的影响非常小,给数据库带来的负载不会超过 1%。这意味着你不需要在服务器上安装任何监控组件。此外,该产品不会往数据库中插入任何表或存储过程。所有的分析都是在远程完成的。它也不会通过数百万个查询来给数据库增加负载,因为这些查询可能会严重影响服务器的性能。

这个工具提供了仪表盘和性能热图视图,可以在浏览器中或移动设备上查看。它会分析每日 SQL 等待时间、性能计数器和作业运行时间。它还会比较服务器和时间段之间的 SQL 和 I/O 等待时间、性能计数器和作业运行时间。你可以进一步查看性能低下的 SQL 查询的 SQL 等待时间,帮你查明导致 SQL 查询不能及时完成的资源争用问题。

SQL Power Tools 的价格在每个数据库 750 美元到 2000 美元之间,如果购买的许可越多,价格就会越低。如果你想要试用该产品,可以联系 SQL Power 获得一个为期 3 周的评估版本。

5. SQL Sentry

来自 SentryOne 的 SQL Sentry 是一种流行的数据库性能监控解决方案。它收集和显示性能指标和警报,并以日历样式显示必要的事件。除了监控之外,还可以直接在仪表盘上运行详细分析来快速解决问题。该产品的性能仪表盘(提供了一个独家的专利存储性能视图)显示了关键查询的详细分析结果。

SQL Sentry 仪表盘有时候会因其过时的外观而受到批评,但它以一种巧妙的方式显示所有关键的 SQL 组件和服务,帮你管理 SQL 数据库实例并确保其可用性。该工具还可以选择查看服务器的历史数据,并将其与当前实时数据进行比较。这些功能有助于生成基线和优化数据库实例和服务器。

SQL Sentry 的价格为每实例 2495 美元,另加每年 499 美元的维护费。如果你选择了订阅方式,价格为每月 125 美元。它还提供了为期 15 天的免费试用。

6. SQL Monitor

SQL Monitor 是 Red Gate 公司提供的一组工具的一个组成部分,你可以使用它来监控、管理、更改、操作和优化 SQL 数据库。你可以用它在问题变得更加严重之前发现它们。这个产品提供了很多功能。其中,它为管理员提供了 SQL Server 集群的概览。它还具有强大的警报功能,让你在问题产生显著影响之前知道它们的存在。报告是该产品的另一个重要特性,它会创建关于服务器健康状况的报告。该工具的性能分析功能将很快让你看到哪些因素对系统的影响最大。在诊断问题时,它可以帮你发现障碍并找到问题的根源。

你可以在 SQL Monitor 的仪表盘上查看所有数据库实例,可以通过客户端在几秒钟内直接访问它们,而无需使用 VPN 或其他方法进行远程连接。仪表盘支持下钻功能,可以在几次单击后显示数据库更详细的统计信息,如等待时间、CPU 使用情况和磁盘 I/O,等等。

SQL Monitor 的基本价格是每个数据库实例 1495 美元。如果你同时购买 5 到 9 个许可证,就可以获得 15% 的折扣。如果购买 10 个或更多许可证,可以获得 20% 的折扣。这些价格中包含了 Red Gate 提供的一年支持。该产品还提供了为期 14 天的试用。

英文原文

https://www.addictivetips.com/net-admin/database-monitoring-tools/

本文彩蛋

虽然付费版工具在功能性和安全性上都有很好的表现,但价格却始终是一个不得不考虑的因素。你可以在 InfoQ 公众号后台对话框回复关键词:监控,获取一些好用的开源监控工具汇总。



点个好看少个 bug 👇


今天看啥 - 让阅读更高品质
本文地址:http://www.jintiankansha.me/t/GxTLcsttt9