【问题标题】:SQL Azure ProfilingSQL Azure 分析
【发布时间】:2010-12-28 03:01:36
【问题描述】:

我在 MS 网站上读到 SQL Azure 不支持 SQL Profiler。人们使用什么来分析在此平台上运行的查询?

【问题讨论】:

    标签: azure profiling azure-sql-database profiler


    【解决方案1】:

    我今天尝试了一个微软推荐的新工具,叫做Azure Data Studio

    在此工具中,您可以下载一个名为 Profiler 的扩展程序,它似乎按预期工作。

    【讨论】:

    • 我用过。它没有完全相同的配置级别,但可以完成工作。
    【解决方案2】:

    SQL Azure 提供以下功能来调整性能、以自己的方式分析查询、标识长时间运行的查询等等

    智能性能 性能概览 性能建议 查询性能洞察 自动调优

    【讨论】:

      【解决方案3】:

      我发现在 Azure SQL 中工作的最接近 SQL 分析器的是 SQL Workload Profiler 但请注意,它是一个工具的测试版,由一个人创建,使用起来不太方便。

      【讨论】:

        【解决方案4】:

        2017/04/14 更新:

        Microsoft 的 Scott Guthrie 今天宣布了 SQLAzure 中的许多新功能(称为 sqlazure 托管实例,目前处于预览状态),预计将在未来几个月内出现在 SQLAzure 中。以下是它们

        1.SQLAgent
        2.SQLProfiler
        3.SQLCLR
        4.服务代理
        5.Logshipping、事务复制
        6.本机/备份恢复
        7.其他 DMV 和 Xevents
        8.跨库查询

        参考资料:
        https://youtu.be/0uT46lpjeQE?t=1415

        【讨论】:

        • 好更新,但这个问题的答案真的是Extended Events。我很惊讶地看到这篇文章的五个答案中缺少它!?
        【解决方案5】:

        Microsoft 声明不推荐使用 SQL Server Profiler。尽管这是个坏主意,that's what they have said

        SQL 配置文件已在 SQL Server 中弃用,这是 带入 SQL DB 没有意义的原因。

        这意味着您将回到 20 多年前的数据库性能监控领域,每个人都将不得不编写自己的性能监控脚本,而不是在您将访问的每台服务器上都有标准的工厂交付工具。这无异于弃用“sp_help”,让每个 DBA 自己编写。希望您对所有的 DMV 都了如指掌……INNER JOIN、OUTER JOIN 和 CROSS APPLY 语法非常好。

        【讨论】:

        • 这不能回答 OP 的问题;他们问用什么作为替代品。
        • 使用传统工具,他指的是(SQL Profiler),你不能。这正是他的问题的答案。 Profiler 让您可以实时访问数据库内核。根据内存压力,DMV 可以是永久性的,也可以是瞬态的……它因 DMV 而异。例如,虚拟文件​​统计是永久性的。运行最差的查询不是。所以是的,我确实回答了这个问题。 MSFT 提供的“解决方案”——在互联网上谷歌并希望其他人为您解决这个问题,因为我们正在淘汰已使用超过 15 年的标准工具。
        • 听起来就像是微软的杰出工程师决定弃用 Windows 开始按钮的时候,因为他们无法以他们的无限智慧弄清楚某些(或大多数)用户正在依赖它。
        【解决方案6】:

        2015 年 9 月 17 日更新:

        微软刚刚宣布了一项名为Index Advisor的新功能:

        指数顾问如何工作?指数顾问持续监控您的 数据库工作负载,执行分析并推荐新索引 可以进一步提高数据库性能。

        建议始终保持最新:由于数据库工作负载和 架构演变,索引顾问将监控更改并调整 相应的建议。每个建议都附带 对数据库工作负载性能的估计影响:您可以使用它 信息优先考虑最有影响力的建议。在 此外,Index Advisor 提供了一种非常简单而强大的方法 创建推荐的索引。

        创建新索引只需点击几下。指数顾问 衡量新创建索引的影响并提供报告 指数对用户的影响。您可以开始使用 Index Advisor 和 通过以下简单步骤提高数据库性能。它 从字面上看需要五分钟才能习惯 Index Advisor 的 简单直观的用户界面。让我们开始吧!

        原答案:

        SQL Azure 现在有一些本机分析。详情请见http://blogs.msdn.com/b/benko/archive/2012/05/19/cloudtip-14-how-do-i-get-sql-profiler-info-from-sql-azure.aspx

        【讨论】:

        • 这似乎没有向您显示传入的存储过程调用,只显示过去运行的最昂贵的那些?
        【解决方案7】:

        您可以使用查询存储功能,查看更多详细信息:http://azure.microsoft.com/blog/2015/06/08/query-store-a-flight-data-recorder-for-your-database/

        【讨论】:

          【解决方案8】:

          我还没有玩太多 SQL Azure,但据我了解,目前没有任何东西可以使用。

          From MS(可能是你看过的文章):

          因为 SQL Azure 执行 物理管理,任何 声明和选项,试图 直接操纵物理资源 会被阻塞,比如Resource 总督、文件组引用和 一些物理服务器 DDL 语句。 也无法设置服务器 选项和 SQL 跟踪标志或使用 SQL Server Profiler 或数据库 调优顾问实用程序。

          如果有一个替代方案,我想它需要能够设置你不能做的跟踪标志,因此我认为目前没有选项。

          解决方案?我只能建议您拥有数据库的本地开发副本,以便您可以在本地运行探查器。我知道这对“实时”问题/调试/监控没有帮助,但这取决于您需要它的用途。

          编辑: 引用MSDN forum:

          问:SQL 是否支持 SQL Profiler 天蓝色?

          A:我们不支持 SQL Profiler SQL Azure v1。

          现在,您可以将其解释为 Profiler 将在未来版本中得到支持的暗示。我认为让很多人参与进来,认真使用 SQL Azure 将是一个很大的要求。

          【讨论】:

          猜你喜欢
          • 2020-08-31
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-12-14
          • 2019-06-23
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多