SQL Server Profiler和数据库引擎优化顾问

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
简介: 原文:SQL Server Profiler和数据库引擎优化顾问  简介           说到Sql的【性能工具】真是强大,SQL Server Profiler的中文意思是SQL Server事件探查,这个到底是做什么用的呢?我们都知道探查的意思大多是和监视有关,其实这个SQL Server Profiler就是一个Sql的监视工具,可以具体到每一行Sql语句,每一次操作,和每一次的连接。
原文: SQL Server Profiler和数据库引擎优化顾问



简介


          说到Sql的【性能工具】真是强大,SQL Server Profiler的中文意思是SQL Server事件探查,这个到底是做什么用的呢?我们都知道探查的意思大多是和监视有关,其实这个SQL Server Profiler就是一个Sql的监视工具,可以具体到每一行Sql语句,每一次操作,和每一次的连接。感觉这个工具的作用还是很大的,给大家分享一下,对于新手了解Sql语句的写法和提高语句的性能方法有很大的帮助。
    SQL Server Profiler使用方法


     我们单击开始--程序--Microsoft SQL Server 2005--性能工具--SQL Server Profiler    如下图

 

然后会出现如下界面

我们单击文件---【新建跟踪(N)...】,这是一个多窗口多任何的工具,我们可以同时新建不同的跟踪窗口,也可以是不同的数据库 接着看

在这里我们输入 我们的跟踪的数据库的服务器名称,用户名和密码等信息。单击连接进入下一个界面

 

上图中左面的可以进行一个基本设置,使用的模板选择,和文件的保存选择等。我们一般使用默认的就OK了,不用动上面的东西,右面的图是事件选择,也就是说我们要跟踪的事件有那个,在这里可以一一的选择,基本上Sql上有的事件都有,包括你用SQL Server Management Studio操作数据库的过程都可以跟踪的到。具体的事件和说明大家可以自己看一下。 只要单击显示所有事件就可以进行全部事件的选择了。    我们还可以对统计的字段进行筛选,单击任意一个列标题可以查看列的说明如下图

我们从上图上依次说明 为:      

TextDate            依赖于跟踪中捕获的事件类的文本值;      

ApplicationName  创建 SQL Server 连接的客户端应用程序的名称。此列由该应用程序传递的值填充,而不是由所显示的程序名填充的;     

NTusername        Windows 用户名。       LoginName           用户的登录名(SQL Server 安全登录或 Windows 登录凭据,格式为“域\用户名”)     

CPU                    事件使用的 CPU 时间(毫秒)。     

Reads                 由服务器代表事件读取逻辑磁盘的次数。     

Writes                由服务器代表事件写入物理磁盘的次数。     

Duration             事件占用的时间。尽管服务器以微秒计算持续时间,

SQL Server Profiler 却能够以毫秒为单位显示该值,具体情况取决于“工具”>“选项”对话框中的设置     

ClientProcessID   调用 SQL Server 的应用程序的进程 ID。     

SPID                  SQL Server 为客户端的相关进程分配的服务器进程 ID。     

StratTime           事件(如果可用)的启动时间。      

EndTime             事件结束的时间。对指示事件开始的事件类(例如 SQL:BatchStarting 或 SP:Starting)将不填充此列。     

BinaryData          依赖于跟踪中捕获的事件类的二进制值。
      然后我们单击运行就可以,当然如果有兴趣的话你也可以对列进行重新排列和筛选,只要单击下面相应的按钮根据提示操作就要可以了,我们这里就安默认的进行


通过上面的图我们就可以清楚的跟踪到每一步操作是过程了, 现在如果大家对那版的Sql语句的写法不怎么懂的话就可以参考上面的,而且 是时时的,你在Sql里操作几下这里就会出现相应的Sql语句,也是一个学习和提高的好工具 不仅仅是这样,我们还可以对其中的数据进行分析,查询,跟踪可以暂停,开始和停止操作,可以同时启动多个跟踪,同时跟踪不同的数据库和表 如果和Sql的数据库引擎优化顾问配合使用的话就更好了,可以分析出来你的Sql语句性能如果,而且还会告诉你怎么修改会更好,我们一起来看一下吧
     数据库引擎优化顾问使用方法


    有了这个跟踪的记录我们怎么样使用数据库引擎优化顾问对其进行分析优化呢?当然第一步我们要先把跟踪到的记录导出到文件.trc类型的文件。单击文件--另存为

   假如我们把文件保存为123.trc      现在我们来打开数据库引擎优化顾问  我们单击开始--程序--Microsoft SQL Server 2005--性能工具--数据库引擎优化顾问 如下图

和上面一样我们要先输入数据库的登录信息 单击连接进入如下界面

     

      我们可以看一下界面,一般不用选择只要安默认的就OK了,需要配置的我上面都有注释。在这里大家一定要记得选择用于工作负荷的数据库和表,意思就是设置要分析的数据库否则会分析不成功。 现在就可以单击开始了

在这里我们可以看到分析成功后的分析报告,这还不算,我们单击上面的 建议选项卡

在这里还给出了你的哪些表,需要优化,应该怎么建立索引和视图才能更有效的提高性能,更好玩的是连需要优化的Sql语句都给生成好了, 我们直接复制执行就要可以了。

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
目录
相关文章
|
11天前
|
SQL 关系型数据库 MySQL
MySQL进阶突击系列(07) 她气鼓鼓递来一条SQL | 怎么看执行计划、SQL怎么优化?
在日常研发工作当中,系统性能优化,从大的方面来看主要涉及基础平台优化、业务系统性能优化、数据库优化。面对数据库优化,除了DBA在集群性能、服务器调优需要投入精力,我们研发需要负责业务SQL执行优化。当业务数据量达到一定规模后,SQL执行效率可能就会出现瓶颈,影响系统业务响应。掌握如何判断SQL执行慢、以及如何分析SQL执行计划、优化SQL的技能,在工作中解决SQL性能问题显得非常关键。
|
10天前
|
SQL 存储 关系型数据库
【SQL技术】不同数据库引擎 SQL 优化方案剖析
不同数据库系统(MySQL、PostgreSQL、Doris、Hive)的SQL优化策略。存储引擎特点、SQL执行流程及常见操作(如条件查询、排序、聚合函数)的优化方法。针对各数据库,索引使用、分区裁剪、谓词下推等技术,并提供了具体的SQL示例。通用的SQL调优技巧,如避免使用`COUNT(DISTINCT)`、减少小文件问题、慎重使用`SELECT *`等。通过合理选择和应用这些优化策略,可以显著提升数据库查询性能和系统稳定性。
64 9
|
21天前
|
SQL Oracle 关系型数据库
如何在 Oracle 中配置和使用 SQL Profiles 来优化查询性能?
在 Oracle 数据库中,SQL Profiles 是优化查询性能的工具,通过提供额外统计信息帮助生成更有效的执行计划。配置和使用步骤包括:1. 启用自动 SQL 调优;2. 手动创建 SQL Profile,涉及收集、执行调优任务、查看报告及应用建议;3. 验证效果;4. 使用 `DBA_SQL_PROFILES` 视图管理 Profile。
|
28天前
|
缓存 NoSQL JavaScript
Vue.js应用结合Redis数据库:实践与优化
将Vue.js应用与Redis结合,可以实现高效的数据管理和快速响应的用户体验。通过合理的实践步骤和优化策略,可以充分发挥两者的优势,提高应用的性能和可靠性。希望本文能为您在实际开发中提供有价值的参考。
55 11
|
28天前
|
SQL Java 数据库连接
【潜意识Java】MyBatis中的动态SQL灵活、高效的数据库查询以及深度总结
本文详细介绍了MyBatis中的动态SQL功能,涵盖其背景、应用场景及实现方式。
91 6
|
2月前
|
SQL Oracle 数据库
使用访问指导(SQL Access Advisor)优化数据库业务负载
本文介绍了Oracle的SQL访问指导(SQL Access Advisor)的应用场景及其使用方法。访问指导通过分析给定的工作负载,提供索引、物化视图和分区等方面的优化建议,帮助DBA提升数据库性能。具体步骤包括创建访问指导任务、创建工作负载、连接工作负载至访问指导、设置任务参数、运行访问指导、查看和应用优化建议。访问指导不仅针对单条SQL语句,还能综合考虑多条SQL语句的优化效果,为DBA提供全面的决策支持。
95 11
|
28天前
|
缓存 关系型数据库 MySQL
【深入了解MySQL】优化查询性能与数据库设计的深度总结
本文详细介绍了MySQL查询优化和数据库设计技巧,涵盖基础优化、高级技巧及性能监控。
222 0
|
1月前
|
SQL 分布式计算 Java
Spark SQL向量化执行引擎框架Gluten-Velox在AArch64使能和优化
本文摘自 Arm China的工程师顾煜祺关于“在 Arm 平台上使用 Native 算子库加速 Spark”的分享,主要内容包括以下四个部分: 1.技术背景 2.算子库构成 3.算子操作优化 4.未来工作
|
5月前
|
SQL 数据库
数据库数据恢复—SQL Server数据库报错“错误823”的数据恢复案例
SQL Server附加数据库出现错误823,附加数据库失败。数据库没有备份,无法通过备份恢复数据库。 SQL Server数据库出现823错误的可能原因有:数据库物理页面损坏、数据库物理页面校验值损坏导致无法识别该页面、断电或者文件系统问题导致页面丢失。
134 12
数据库数据恢复—SQL Server数据库报错“错误823”的数据恢复案例
|
1月前
|
数据库 Windows
SqlServer数据恢复—SqlServer数据库所在分区损坏的数据恢复案例
一块硬盘上存放的SqlServer数据库,windows server操作系统+NTFS文件系统。由于误操作导致分区损坏,需要恢复硬盘里的SqlServer数据库数据。