資源描述:
《在sql server實(shí)例之間傳輸?shù)卿浐兔艽a--》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。
1、在SQLServer實(shí)例之間傳輸?shù)卿浐兔艽a>> 概要 在將數(shù)據(jù)庫(kù)移動(dòng)到新服務(wù)器后,用戶可能無(wú)法登錄到新服務(wù)器。相反,他們會(huì)收到下面的錯(cuò)誤消息:Msg18456,Level16,State1Loginfailedforuser'%ls'. 您必須將登錄和密碼傳輸?shù)叫路?wù)器。本文介紹如何將登錄和密碼傳輸?shù)叫路?wù)器?! ∪绾卧谶\(yùn)行SQLServer7.0的服務(wù)器之間傳輸?shù)卿浐兔艽a SQLServer7.0數(shù)據(jù)轉(zhuǎn)換服務(wù)(DTS)對(duì)象傳輸功能可在兩臺(tái)服務(wù)器之間傳輸?shù)卿浐陀脩簦粋鬏擲QLServer驗(yàn)證登錄的密碼。要將登錄和密碼從一臺(tái)運(yùn)行SQ
2、LServer7.0的服務(wù)器傳輸?shù)搅硪慌_(tái)運(yùn)行SQLServer7.0的服務(wù)器,請(qǐng)執(zhí)行在不同版本的SQLServer之間傳輸?shù)卿浐兔艽a的完整解決方案一節(jié)中的步驟。 如何從SQLServer7.0向SQLServer2000或者在運(yùn)行SQLServer2000的服務(wù)器之間傳輸?shù)卿浐兔艽a 要從SQLServer7.0服務(wù)器向SQLServer2000的一個(gè)實(shí)例或者在SQLServer2000的兩個(gè)實(shí)例之間傳輸?shù)卿浐兔艽a,可以使用SQLServer2000中新的DTS包傳輸?shù)卿浫蝿?wù)。為此,請(qǐng)按照下列步驟操作:1.連接到SQLServer2000目標(biāo)服務(wù)器,移動(dòng)到S
3、QLServer企業(yè)管理器中的數(shù)據(jù)轉(zhuǎn)換服務(wù),展開此文件夾,右鍵單擊本地包,然后單擊新增包?! ?.在DTS程序包設(shè)計(jì)器打開后,單擊任務(wù)菜單上的傳輸?shù)卿浫蝿?wù)。根據(jù)需要完成有關(guān)源、目標(biāo)和登錄選項(xiàng)卡的信息?! ≈匾f(shuō)明:SQLServer2000目標(biāo)服務(wù)器不能運(yùn)行64位版本的SQLServer2000。64位版本SQLServer2000的DTS組件不可用。如果要從其他計(jì)算機(jī)上的SQLServer實(shí)例中導(dǎo)入登錄,您的SQLServer實(shí)例必須在域帳戶下運(yùn)行才能完成此任務(wù)。 注意:DTS方法將傳輸密碼,但不會(huì)傳輸原始SID。如果登錄不是使用原始SID創(chuàng)建的,而且用戶
4、數(shù)據(jù)庫(kù)也被傳輸?shù)揭慌_(tái)新服務(wù)器,則該數(shù)據(jù)庫(kù)用戶將從該登錄中孤立出去。要傳輸原始SID并繞過(guò)被孤立的用戶,請(qǐng)執(zhí)行在不同版本的SQLServer之間傳輸?shù)卿浐兔艽a的完整解決方案一節(jié)中的步驟?! ≡诓煌姹镜腟QLServer之間傳輸?shù)卿浐兔艽a的完整解決方案 此方法適用于以下情況: •從SQLServer7.0向SQLServer7.0傳輸?shù)卿浐兔艽a?! ?bull;從SQLServer7.0向SQLServer2000傳輸?shù)卿浐兔艽a。 •從SQLServer7.0向SQLServer2005傳輸?shù)卿浐兔艽a。 •在運(yùn)行SQLSer
5、ver2000的服務(wù)器之間傳輸?shù)卿浐兔艽a?! ?bull;從SQLServer2000向SQLServer2005傳輸?shù)卿浐兔艽a?! ∽⒁猓赫?qǐng)查看本文末尾的備注,以了解有關(guān)下列步驟的重要信息?! ∫诓煌姹镜腟QLServer之間傳輸?shù)卿浐兔艽a,請(qǐng)按下列步驟操作:1.在源SQLServer上運(yùn)行以下腳本。此腳本可在master數(shù)據(jù)庫(kù)中創(chuàng)建名為sp_hexadecimal和sp_help_revlogin的兩個(gè)存儲(chǔ)過(guò)程。請(qǐng)?jiān)谕瓿蛇^(guò)程的創(chuàng)建之后繼續(xù)執(zhí)行第2步?! ∽⒁猓合旅娴倪^(guò)程取決于SQLServer系統(tǒng)表。這些表的結(jié)構(gòu)在SQLServer的不同版本之間可能會(huì)
6、有變化,請(qǐng)不要直接從系統(tǒng)表中選擇。-----BeginScript,Createsp_help_revloginprocedure-----USEmasterGOIFOBJECT_ID('sp_hexadecimal')ISNOTNULL DROPPROCEDUREsp_hexadecimalGOCREATEPROCEDUREsp_hexadecimalbinvaluevarbinary(256),hexvaluevarchar(256)OUTPUTASDECLAREcharvaluevarchar(256)DECLAREiintDECLARE
7、lengthintDECLAREhexstringchar(16)SELECTcharvalue='0x'SELECTi=1SELECTlength=DATALENGTH(binvalue)SELECThexstring='0123456789ABCDEF'pintint DECLAREfirstintint DECLAREsecondintint SELECTtempint=CONVERT(int,SUBSTRING(binvalue,i,1)) SELECTfirstint=FLOOR(tempint/16) SELECTs
8、econdint=tempint-(f