問題:
您工作的本機裝有Visual Studio 2005,局域網(wǎng)中有一臺SQL Server 2005數(shù)據(jù)庫服務器,你想通過本機遠程調試SQL Server 2005服務器上的存儲過程。但是不知道如何配置或啟用遠程調試?希望這篇文章對您有用。對于數(shù)據(jù)庫和Visual Studio在同一機器的存儲過程調試,園子里已經(jīng)有一篇譯作說的很好了,可以去參考:在Visual Studio 2005中調試SQL Server 2005的存儲過程,但是對于遠程調試的配置,沒有過多篇幅描述,所以本文就說說如何配置SQL Server 2005進行遠程調試。
開始之前,我們先約定,運行Visiual Studio 2005(下邊簡稱VS)的機器,稱之為客戶機,運行SQL Server 2005(后邊若未特殊說明,SQL Server均指SQL Server 2005)的機器,稱之為服務器。
在下邊的演示中,我的客戶機操作系統(tǒng)是Windows XP SP2,服務器是Windows Server 2003 ,安裝有SQL Server 2005,兩臺機器是對等網(wǎng)絡關系,都不是通過域登錄/管理的。事實上,在域中的二臺機器,配置起用會更方便。所在請先檢查您的網(wǎng)絡環(huán)境,并抓住配置方法的核心要點,不要搞不定了跑來扔磚我哦:D~
廢話少說,進入主題,在遠程調試的過程中,有這么幾個地方使用到了這么幾個帳號:
1. 客戶機啟動VS的帳號,或者當前登錄客戶機的Windows帳號;
2. 客戶機訪問服務器資源的帳號(比如訪問服務器共享文件這樣的情況);
3. 服務器上啟動SQL Server服務的帳戶;
4. 客戶機連接服務器數(shù)據(jù)庫的帳號(比如數(shù)據(jù)庫中sa這種帳號);
而對于配置遠程調試的關鍵之處,是對于權限的設置,也即上述幾個帳號的設置,那么接下來我們所要做的,就是把這幾個帳號及其權限配置正確,具體是以下幾個方面:
1. 當前登錄客戶機的Windows帳號得有權限運行VS調試程序,所以最好使用管理員組的帳號登錄客戶機;比如帳號:yao,密碼為1234,是客戶機管理員組的帳號,下邊均以此帳號進行說明;
2. 在服務器上,也有一個和客戶機完全相同的帳號:yao,密碼為1234,是服務器Administrators組的成員;注意用戶名,密碼要和客戶機的完全相同,用戶名相同,密碼不同也不行。(如果是在域里的話,那就好辦了,比如把域上的帳戶yao分別加入二臺機器的管理員權限。)
3. 在服務器上,將Windows帳號yao設置為SQL Server中sysadmin角色的成員;即使用帳號yao可以通過Windows身份驗證連接SQL Server,并且這個帳號具有sysadmin角色的權限;
4. 在服務器上,將SQL Server服務以本機的Windows帳號yao運行;
5. 客戶機連接服務器SQL Server的帳戶(不管是Windows 用戶帳戶還是SQL Server 登錄帳戶)必須是服務器SQL Server中sysadmin 角色的成員。比如是我們使用VS的服務器資源管理器連接SQL Server數(shù)據(jù)庫時,要使用一個帳號;
6. 注意1,5點所說帳戶的區(qū)別,一個是運行VS的帳戶,一個是連接SQL Server的帳戶,二者可以不相同。
7. 服務器上SQL Server登錄驗證不管是Windows身份驗證,還是混合模式身份驗證,都可以,只是設置為使用Windows身份驗證的時候,第5點所說的連接帳號,也只能是Windows 用戶帳戶啦。
8. 注意設置客戶機連接服務器的網(wǎng)絡用戶,要是2中所說的用戶;這里的用戶,需要在XP的“管理我的網(wǎng)絡密碼”中去設置,在Windows2003 中是在 Stored User Names and Passwords 中設置;
9. 注意Windows防火墻或其它防火墻,在第一次做的時候,通通先關掉,等跑通了再開啟開放相應端口;
下邊我采用圖文結合的方式,詳細說明步驟:
1. 在客戶機上,以管理員帳號登錄,比如我以帳號:yao(密碼為1234)登錄;
2. 在服務器上,創(chuàng)建帳號:yao,密碼也為1234,并加入Administrators組,如下圖:

3. 在服務器上(我演示的服務器叫Server),將Windows帳號yao設置為SQL Server中sysadmin角色的成員;分為二步,先創(chuàng)建登錄,再加入sysadmin角色組;如下圖:


4. 在服務器上,將SQL Server服務以本機的Windows帳號yao運行,設置好后,記得將服務重啟以生效,如下圖:

5. 現(xiàn)在該到客戶機的相關配置啦,接下來設置客戶機連接服務器的網(wǎng)絡用戶,在控制面板->用戶帳戶->(點當前登錄的用戶名)->管理我的網(wǎng)絡密碼中(在Windows2003 中是在 控制面板->Stored User Names and Passwords 中設置),將連接服務器的帳號設置為服務器上剛創(chuàng)建的帳戶yao,設置方法見下圖示,經(jīng)過此步設置后,客戶機連接服務器時,將使用此用戶來連接,如下圖:

6. 到此時,關鍵配置已經(jīng)完成了。接下來就是使用VS進行調試了,不多述,幾張圖大家應該看得明白:


上圖中,連接SQL Server的帳戶不管是Windows 用戶帳戶還是SQL Server 登錄帳戶,都必須是服務器SQL Server中sysadmin 角色的成員。當選擇Windows身份驗證時,就是使用用戶Yao連接了;
7. 接下來找個存儲過程試一下:


到這步時,才算一切都正確了。配置成功后,調試方法就和本機調試無異了,具體的調試方法可以參考本文開頭所說的那篇文章。如果最后到這步時,您還不能進行遠程調試,那么除了重新檢查一遍上述操作配置之外,請參考MSDN:《調試 SQL》。
新聞熱點
疑難解答
圖片精選