中央管理服务器
我工作的公司为其 Windows 客户端提供专用的 VMware 托管服务器。在这些 Windows 客户端中,基本上有 60 个单实例 SQL Server,版本从 2000 年到 2008 年不等。其中有 40 个 Express 版、10 个标准版以及多个 MSDE 和工作组版。
通过配置为中央管理服务器的全新SQL Server 2008 R2 标准版,我可以同时访问这些远程机器中的每一台。每个服务器都根据其版本 8、9 或 10 注册到一个组中。这意味着我可以根据它们的版本查询每组服务器以避免兼容性错误。
问题
通常,我们只能推销增加 RAM、CPU 或将 SQL Server 移到专用机器上的想法,因为客户出于 N 种原因要求我们这样做。
目标
我想使用中央管理服务器更进一步,去我们的客户那里说,如果你这样做了,那么你的网站或应用程序会快 X 倍。想象一个需要 3 秒加载的 ASP 网页,通过增加 RAM,换句话说,根据缓冲池真正需要的内容,同一页面将在 1 秒内加载。
我从Brent Ozar 的 Take Over an Unknown Server 中找到了这行 T-SQL 代码
SELECT @@SERVERNAME AS ServerName ,
YEAR(backup_finish_date) AS backup_year ,
MONTH(backup_finish_date) AS backup_month , …Run Code Online (Sandbox Code Playgroud) performance monitoring sql-server-2008-r2 central-management-server
我们正在设置一个主站和一个(只读)从站的流式复制。我们现在正在寻找一种方法来监控复制;主要是为了验证从服务器是否仍然是最新的。
是否有可能做到这一点——最好是从奴隶?如果是这样,如何?
在支持 keepalive 套接字选项的系统上,设置tcp_keepalives_idle、tcp_keepalives_interval和tcp_keepalives_count有助于主节点及时发现连接断开。
在这种情况下,“及时通知”是什么意思?是否有一些错误日志报告连接断开?
我正在尝试随时间推移对查询性能进行趋势分析。我假设查询存储将帮助我做到这一点,但我使用的 SQL Server 版本是 2014,因此没有可用的查询存储。
有没有人对我如何捕获这些信息并将其存储在表格中以随时间变化趋势等有任何提示?
那些使用优秀的 sp_HumanEvents 的人,也许是作者本人,请帮助我理解我所缺少的东西(因为我的愚蠢)。
#1
当监控阻塞时,必须设置阻塞进程阈值(以秒为单位),否则blocked_process_event将不会被触发。这与 @blocking_duration_ms 参数有何关联?
示例:阻塞进程阈值 ID 设置为 10 秒 @blocking_duration_ms 保留默认 = 500 毫秒
#2
当我想在服务器重新启动时连续且独立地将结果记录到表中时,建议我使用代理作业,并使用一个示例设置一个名为sp_HumanEvents 的计划:10 秒签入 ,但在周日午夜重复运行。当SQL Server代理启动时自动启动它不是更合适吗?
我们希望以编程方式检测 cron 调度的 pg_dumps 中的错误。
除了检查日志文件是否以“pg_dump:保存数据库定义”结尾:
为了以编程方式检查转储,我还可以grep 其他什么字符串。
即使对于相同的查询,计划缓存和查询存储也不相同。当寻找特定查询或一组相关查询的性能或监视信息时,每个查询的优点/缺点是什么?
我的在线研究表明的总体印象是,查询存储可以比计划缓存更快地查询(我不确定为什么),并且它的条目往往持续更长时间(这是可配置的),但我没有发现任何说法关于计划缓存优于查询存储的情况。
假设我不关心 SQL Server 2017 和 2022 引入的使用查询存储进行自动性能调优的功能。相反,假设我比较查询存储和计划缓存是出于两者可以执行的任务的目的。
如何监控我的 SQL Server 正在运行的 SQL 语句,是否可以仅使用 SQL Server 而没有第三方工具?
作为替代方案,有人可以推荐任何可以通过 ODBC 连接监视运行语句的免费工具吗?
是否有任何可用于 Postgresql 的类似于 SQL Server 查询存储的扩展。这样它可以帮助识别性能瓶颈。
SQL Server 查询存储提供有关查询执行次数、每个查询的资源消耗的信息。https://learn.microsoft.com/en-us/sql/relational-databases/performance/monitoring-performance-by-using-the-query-store?view=sql-server-ver15提供了有关查询存储的更多详细信息。
我还不是 DBA,但这似乎是 DBA 类型的问题,而不是编程问题。
有人问我:
由于需要在实时环境中运行,这变得很复杂。我们的愿望似乎是自动化一些维护过程,以修复我们发现的任何问题,并为开发提供输入以阻止他们做坏事。
我的第一个想法是——招聘一名 DBA,可能是一名顾问。
然后,所要求的规模之大令我震惊。一个项目可能会持续数月,其中一台 SQL Server 和多台应用程序服务器共享任务。此输出的数据量将是巨大的,监视每个正在执行的查询的性能开销也将是巨大的。
有没有推荐的此类分析工具?
monitoring ×10
sql-server ×5
postgresql ×3
performance ×2
dump ×1
index ×1
oracle ×1
pg-dump ×1
plan-cache ×1
query ×1
query-store ×1
replication ×1
t-sql ×1