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