工具:
SQL Server Profiler这个工具是SQL Server数据库自带的语句执行跟踪工具,常使用于分析软件修改数据库时所执行的语句,适合用来研究软件运行数据库的原理。
打开方式:
本机安装了SQL server的话,都是自带的。直接去直接在【开始】-【程序】-搜索Profiler可找到【SQL Server Profiler】,点击打开。
1、新建一个跟踪:
【文件】-【新建跟踪】
2、在弹出窗口确认你需要跟踪的数据库服务器地址,并验证登录;
3、进行基础设置,如跟踪的名称、保存位置等,也支持设置保存为数据库的表,这里我不配置,默认的已经能够满足我的需求
4、运行后,就可以开始跟踪抓取数据库动作了textdata列就是运行的语句了,点击某一行也能够再下方的栏目中查看语句。
5、在跟踪运行过程中,去执行你要分析的动作,等动作执行完就可以暂停或者是结束跟踪
6、去跟踪结果里面找想要的答案了,这个得根据需求来的,字段简单介绍下:
ApplicationName:这个是创建 SQL Server 连接的那个客户端应用程序的名称。
BinaryData: 依赖于跟踪中捕获的事件类的二进制值。
ClientProcessID: 调用 SQL Server 的应用程序的进程 ID。
CPU: 事件使用的 CPU 时间(毫秒)。
Duration: 事件占用的时间。尽管服务器以微秒计算持续时间,SQL Server Profiler 却能够以毫秒为单位显示该值,具体情况取决于“工具”>“选项”对话框中的设置
EndTime: 事件结束的时间。对指示事件开始的事件类(例如 SQL:BatchStarting 或 SP:Starting)将不填充此列。
LoginName: 用户的登录名(SQL Server 安全登录或 Windows 登录凭据,格式为“域\用户名”)
NTusername: Windows用户名。
Reads: 由服务器代表事件读取逻辑磁盘的次数。
TextDate: 依赖于跟踪中捕获的事件类的文本值;
SPID: SQL Server 为客户端的相关进程分配的服务器进程 ID。
StratTime: 事件(如果可用)的启动时间。
Writes: 由服务器代表事件写入物理磁盘的次数。
7、可以通过查询关键字的方式来找:【编辑】–【查找】,然后填写查找内容进行查找,这样也能方便找到;
若把这个跟踪结果放到数据库表里,这样搜索结果应该更方便快捷。