日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

初次尝试使用Windbg调试Sql Server 进程

發布時間:2025/4/14 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 初次尝试使用Windbg调试Sql Server 进程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ? 最近看了呂海波大牛的書,和相關資料;決定嘗試一下使用Windbg調試Sql Server 進程;當然是入門級的;

看了呂海波老師的書終于明白一個道理,原來數據庫系統的內核(內存)中,就是各種鏈表;

?

大牛的相關鏈接在

http://bbs.51cto.com/thread-1085647-1.html
呂海波
調試 Oracle 倡導者 ? ?DTrace/mdb/gdb調試 Oracle 技術推廣者
?

首先用windbg附加到sqlserver進程;

?

關閉windbg,再打開設置符號文件路徑,發現被附加的進程被結束,正在運行中的sqlcmd不能輸入命令了;

?

重新打開,設置符號文件路徑為網上下載;

再附加到sql server 進程;提示沒找到符號文件路徑;

?

lm列出模塊,可列出;

?

查看內存使用情況,看不到;

?

查看內存,顯示的都是問號;

?

查看進程堆,看不到;

?

看peb,看不到;

?

啥情況?不是設置符號文件路徑為網上自動下載,本地找不到會自動往微軟的網站下載么?

想了一下,看來這種高級貨32位和64位差別很大,本機64位,需要使用64位的windbg才行;

?

打開windbg 64位,設置符號文件路徑如下圖,附加到sqlserver進程,可以了;

?

看下內存使用詳情;

?

內存使用中,有的是釋放,有的是內存映射文件,有的是Stack32或Stack64,有的是載入的某個dll使用的;

?

TEB64或TEB32應該是那個線程使用的;

對于這些都不太了解;以后有空再研究吧;

?

查看進程堆,顯示了兩個起始地址;

?

之前在數據庫中用insert into 插入了字符串,看下插入的字符串在內存中能不能搜到;

用s命令搜索字符串,掛了;命令輸錯;一直顯示busy;

?

中斷之;

?

重新輸命令,沒輸對;

根據網上資料,s命令搜索字符串,-u搜unicode,-a搜ascii;

?

?

dv: 不用加內存地址,顯示當前棧上面的所有的變量

不能枚舉,提示需要私有符號;

?

查看一下進程堆,打命令du或da加前面顯示的進程堆地址;

沒東西,空的;

?

?

根據網上資料,可以在windbg中用.shell命令加載一個cmd shell,然后可使用dos的find命令搜索字符串,如下圖的命令;

啥也沒搜到;

先到這里;

?

總結

以上是生活随笔為你收集整理的初次尝试使用Windbg调试Sql Server 进程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。