SQL Server 2012如何打开2016的profiler文件
作者:markjiang7m2
原文地址:https://www.cnblogs.com/markjiang7m2/p/10980191.html
背景
在上星期,公司負(fù)責(zé)support的同事接到反饋說某個(gè)項(xiàng)目生產(chǎn)環(huán)境上的某個(gè)頁面加載很慢,一般遇到這種問題,我們的support同事都會(huì)先上數(shù)據(jù)庫抓一下profiler,然后再讓我們開發(fā)的找原因。但是,當(dāng)我嘗試打開這個(gè)profiler文件的時(shí)候,卻彈出了錯(cuò)誤提示:
找不到跟蹤定義文件Microsoft SQL Server TraceDefinition 13.0.0.xml(用于打開的跟蹤文件x.trc)。請(qǐng)連接到Microsoft SQL Server 13.0.0服務(wù)器并將文件Microsoft SQL Server TraceDefinition 13.0.0.xml復(fù)制到您的C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Profiler\TraceDefinitions目錄,或者將事件探查器連接到該服務(wù)器以自動(dòng)生成文件。然后重新打開該跟蹤文件。
然后點(diǎn)擊確認(rèn),又彈出第二個(gè)提示框
無法打開文件。文件可能已損壞,也可能是數(shù)據(jù)格式不正確。
好吧,我承認(rèn)我的第一反應(yīng)是這個(gè)文件損壞了,而不是覺得是sql server版本的問題。
然后我做了一個(gè)測(cè)試,在本地遠(yuǎn)程連接到測(cè)試服務(wù)器進(jìn)行抓取profiler,并保存文件,一切都正常。但是當(dāng)我重新打開這個(gè)文件的時(shí)候,我又得到了之前的錯(cuò)誤提示,我才考慮可能是因?yàn)榘姹镜膯栴}。
解決方案
support的同事跟我說,這個(gè)文件是要在SQL Server 2016上面才能打開的,因?yàn)樯森h(huán)境用的是2016。當(dāng)然,他沒有說錯(cuò),是可以這么操作的,只是這樣,好像比較麻煩,而且感覺這操作還有點(diǎn)笨。。 好吧,其實(shí)SQL Server在第一個(gè)提示中已經(jīng)給了解決方案了,只是被我習(xí)慣性地忽略了。
我本地安裝的實(shí)例是SQL Server 2012,然后服務(wù)器上面數(shù)據(jù)庫實(shí)例是SQL Server 2016,所以我本地就缺少了2016的跟蹤定義文件,只要把這個(gè)文件復(fù)制到我本地,就可以正常打開2016的profiler文件了。
2016 profiler的跟蹤定義文件路徑
本地路徑
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Profiler\TraceDefinitions
這個(gè)解決方案也同樣用于SQL Server 2008。
延伸
其實(shí)還可以注意到,如果我們直接在SQL Server 2012中連接2016抓取profiler時(shí),沒有任何的模板可以選擇,這就需要我們每次都重新設(shè)置跟蹤的選項(xiàng),很是麻煩。
這個(gè)問題跟上面的問題有點(diǎn)類似,是因?yàn)镾QL Server 2012 profiler中缺少了2016 profiler的模板文件,所以只要將2016 profiler上的模板文件復(fù)制到本地就可以了。
這次是需要將整個(gè)文件夾一起復(fù)制下來
2016 profiler的跟蹤定義文件路徑
C:\Program Files (x86)\Microsoft SQL Server\140\Tools\Profiler\Templates\Microsoft SQL Server\130
本地路徑
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Profiler\Templates\Microsoft SQL Server
重新打開profiler就可以看到2016的模板了。
再延伸一下。經(jīng)常使用profiler的朋友應(yīng)該都會(huì)遇到這樣的情況,SQL Server提供的模板跟自己想要的不太一樣,這個(gè)時(shí)候,我們就可以新建屬于自己的模板了。
在 “文件” 菜單上,單擊 “模板”,再單擊 “新建模板”
選擇服務(wù)器類型,不同版本服務(wù)器之間的模板是不通用的
還可以基于現(xiàn)有的模板進(jìn)行改造
建立好的profiler模板還可以導(dǎo)出成 .trc文件,再導(dǎo)入到其它機(jī)器上面使用
總結(jié)
今天分享給大家的文章不是什么干貨,只是記錄一下在我工作中遇到的問題和解決方案,希望對(duì)各位有用。也算是一點(diǎn)小技巧吧,對(duì)于經(jīng)常使用profiler的朋友來說確實(shí)是能省下不少功夫的。今天就先跟大家介紹到這里,希望大家能持續(xù)關(guān)注我們。
總結(jié)
以上是生活随笔為你收集整理的SQL Server 2012如何打开2016的profiler文件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 「分布式系统理论」系列专题
- 下一篇: 分布式Redis的分布式锁 Redloc