标签: monitoring

如何监视每个时间跨度每个存储过程的调用计数?

为了诊断一些性能问题,我想更好地了解与系统性能相比调用某些过程的次数。有没有办法获得在特定时间跨度内每个过程被调用的次数?

performance monitoring sql-server

10
推荐指数
1
解决办法
2万
查看次数

监控每个数据库的 MySQL 活动?

监视服务器每个数据库上的活动的最佳方法是什么?

我尝试了实时显示活动的 mtop/mytop,但查看在其上执行的所有查询并不是很实用。

我激活了 MySQL 日志,但没有选择按数据库拆分它们。

您使用什么工具来监控 MySQL 服务器?

mysql monitoring

9
推荐指数
1
解决办法
9637
查看次数

监视 SQL Server 数据文件中的可用空间

我已手动将 mdf/ndf 文件调整为较大的大小,以避免对 SQL Server 数据库进行自动增长操作。由于文件较大,磁盘分区上的可用空间很少,系统管理员不断提醒我空间不足。

因为我调整了它们的大小,所以数据文件中有很多可用空间,但在查看文件大小/磁盘可用空间时不会注意到它。

如何监控数据文件的实际使用百分比?我更喜欢使用 perfmon 计数器。我担心当文件真的用完空间时,SQL Server 将无法分配足够的空间并且会崩溃。

monitoring sql-server perfmon disk-space

9
推荐指数
3
解决办法
1万
查看次数

对 MS SQL Server 监控软件或服务的建议?

我有一个客户端,其 MS SQL Server 实例(2000 年、2005 年)分散在 20-30 个服务器上。我一直致力于让事情井井有条,并将定期审查数据库基础设施的健康状况、测试备份等。我们还计划在 2008 年之前获得尽可能多的这些数据库。

我知道像 New Relic for Linux 堆栈网络应用程序和数据库这样的服务,我今天通过 Google 偶然发现了 SQL Monitor 产品 (RedGate)。任何人都可以在服务或工具(您有经验的)方面提供一些指导,使我/我的客户能够监视和管理他们的 MS SQL 实例吗?

performance monitoring sql-server query-performance

8
推荐指数
2
解决办法
4412
查看次数

创建 SQL Server 性能基线监控

为了获得概览和可比较的数据,我当前的任务是创建一个性能基线,以获取有关不同生产 SQL Server 实例的一些数据。

我的想法是:

  • 我想使用几个 DMV
  • 我想包括一个探查器跟踪(包括执行计划)
  • 我想包括性能数据

所以我试图实现的是一个通用的性能监控可启动和可停止(也可调度)返回:

  1. 确定正在进行的性能优化任务是否成功所需的所有信息

  2. 几个汇总的简单数字有助于形象化长期进展……尤其是。用于管理;-)

  3. 探查器跟踪中的可重新执行执行计划,以通过索引优化任务比较各个队列的更改和改进

我发现了一些描述性能基线创建的信息。它们中的大多数要么非常复杂,要么只关注所需的性能指标之一(主要是性能数据)。

最匹配的示例/描述如下:为 SQL Server 创建性能基准

问题是:

有没有人有以快速可行的方式创建这种性能监视器的经验?

performance monitoring sql-server

8
推荐指数
3
解决办法
5899
查看次数

有哪些重要的 MySQL 状态变量需要关注?

我是一名具有编程背景的新 DBA。因此,我喜欢构建工具来管理任务,以帮助我熟悉技术的复杂性。

在这种情况下,我正在管理多个 MySQL 服务器,并希望构建一个 UI 来查看服务器的运行状况。

需要注意哪些重要的状态变量会在长时间运行的服务器(> 48 小时)上发出危险信号?

我正在寻找的一个例子是qcache_lowmem_prunes变得更大可能表明配置错误query_cache

mysql monitoring

7
推荐指数
1
解决办法
1887
查看次数

运行带有多个命令的脚本时,如何找出我们所处的位置?

我有一些流程需要在开始之前采取不同的步骤。例如:

禁用对外键的检查约束:

select 'alter table '+fk.table_schema+'.'+fk.table_name
+' NOCHECK CONSTRAINT '+fk.CONSTRAINT_NAME 
from SAProduct.information_schema.table_constraints fk 
join SAProduct.information_schema.tables t
on t.table_schema = fk.table_schema 
and t.table_name = fk.table_name 
WHERE constraint_type='FOREIGN KEY'
Run Code Online (Sandbox Code Playgroud)

这将产生一个很大的语句列表,我只复制 3 个:

use saproduct
go
alter table dbo.tblProdClassificationCode NOCHECK CONSTRAINT FK_tblProdClassificationCode_tblProdClassification
alter table dbo.tblProdClassificationCodeDescr NOCHECK CONSTRAINT fk_ProdClassificationCodeDescr_ProdClassificationCode
alter table dbo.tblProdClassificationCodeGenerate NOCHECK CONSTRAINT fk_ProdClassificationCodeGenerate_ProdClassification
Run Code Online (Sandbox Code Playgroud)

如果我要一次性运行它,我将如何找到我的位置?我正在处理哪张桌子,下一张是哪一张?

删除也是一样的:

select 'DELETE FROM '+table_schema+'.'+table_name
from saproduct.information_schema.tables 
where table_name like 'tbl%'
Run Code Online (Sandbox Code Playgroud)

上面的脚本将生成以下语句集:

use saproduct
go
DELETE FROM dbo.tblBLanguage
DELETE FROM dbo.tblBLgCategoryXRef
DELETE FROM dbo.tblBLgSegmentXRef
DELETE FROM dbo.tblProdClassification
DELETE …
Run Code Online (Sandbox Code Playgroud)

monitoring sql-server ssms t-sql sql-server-2014

7
推荐指数
2
解决办法
303
查看次数

查找先前的语句或在阻塞情况下持有锁

我正在使用 XEblocked_process_report 来检测和分析阻塞。
但由于这是一个时间点情况,我只能看到当前正在运行的阻塞领导者的语句以及被阻塞会话试图获取的不兼容锁。

因此,如果阻塞领导者在一个事务中有多个批次/语句,我无法找出之前的哪个语句导致阻塞。

重现脚本

/* Set up tables */
CREATE TABLE dbo.FirstQuery (Id int PRIMARY KEY)
CREATE TABLE dbo.SecondQuery (Id int PRIMARY KEY)

INSERT INTO dbo.FirstQuery (Id)
OUTPUT Inserted.Id INTO dbo.SecondQuery ( Id )
VALUES (1), (2), (3)

/* set up the blocked process event */

EXEC sys.sp_configure
        @configname = 'blocked process threshold (s)' -- varchar(35)
      , @configvalue = 10 -- int
    
RECONFIGURE 

CREATE EVENT SESSION [blocked_process_report] ON SERVER 
ADD EVENT sqlserver.blocked_process_report
(
    ACTION(sqlserver.session_id,sqlserver.sql_text,sqlserver.tsql_stack)
)
GO
ALTER EVENT …
Run Code Online (Sandbox Code Playgroud)

monitoring sql-server blocking sql-server-2019

7
推荐指数
0
解决办法
197
查看次数

是否有一种快速、直接的方法来测量 SQL Server 2000 上的每秒事务数?

sys.dm_os_performance_countersSQL Server 2005 中引入的DMV 使这项任务变得有些微不足道。但是,我的 Google-Fu 被阻止在 SQL Server 2000 中找到执行此操作的方法。

如何测量 SQL Server 2000 中的每秒事务数?

performance monitoring sql-server sql-server-2000

6
推荐指数
1
解决办法
516
查看次数

有没有办法确定事务修改了多少行(在事务结束之前)?

我有一个约 3.2 亿的行表,我在上面运行以下查询:

UPDATE my_table SET state = TRIM(state)
Run Code Online (Sandbox Code Playgroud)

不用说,这已经运行了 90 多个小时(从星期四下午开始)并且还没有完成。

我想或多或少地知道它到目前为止修改了多少行。有没有办法从正在运行的事务中获取这些信息?

尝试搜索时,我发现如何使用该函数粗略估计将有多少行添加到表中pgstattuple

select dead_tuple_count from pgstattuple('my_table');
Run Code Online (Sandbox Code Playgroud)

但这似乎没有显示关于修改了多少行的任何有趣信息。

postgresql monitoring update

6
推荐指数
1
解决办法
1487
查看次数