欢迎来到天天文库
浏览记录
ID:21231932
大小:66.00 KB
页数:5页
时间:2018-10-20
《在sql server实例之间传输登录和密码--》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、在SQLServer实例之间传输登录和密码>> 概要 在将数据库移动到新服务器后,用户可能无法登录到新服务器。相反,他们会收到下面的错误消息:Msg18456,Level16,State1Loginfailedforuser'%ls'. 您必须将登录和密码传输到新服务器。本文介绍如何将登录和密码传输到新服务器。 如何在运行SQLServer7.0的服务器之间传输登录和密码 SQLServer7.0数据转换服务(DTS)对象传输功能可在两台服务器之间传输登录和用户,但它不传输SQLServer验证登录的密码。要将登录和密码从一台运行SQ
2、LServer7.0的服务器传输到另一台运行SQLServer7.0的服务器,请执行在不同版本的SQLServer之间传输登录和密码的完整解决方案一节中的步骤。 如何从SQLServer7.0向SQLServer2000或者在运行SQLServer2000的服务器之间传输登录和密码 要从SQLServer7.0服务器向SQLServer2000的一个实例或者在SQLServer2000的两个实例之间传输登录和密码,可以使用SQLServer2000中新的DTS包传输登录任务。为此,请按照下列步骤操作:1.连接到SQLServer2000目标服务器,移动到S
3、QLServer企业管理器中的数据转换服务,展开此文件夹,右键单击本地包,然后单击新增包。 2.在DTS程序包设计器打开后,单击任务菜单上的传输登录任务。根据需要完成有关源、目标和登录选项卡的信息。 重要说明:SQLServer2000目标服务器不能运行64位版本的SQLServer2000。64位版本SQLServer2000的DTS组件不可用。如果要从其他计算机上的SQLServer实例中导入登录,您的SQLServer实例必须在域帐户下运行才能完成此任务。 注意:DTS方法将传输密码,但不会传输原始SID。如果登录不是使用原始SID创建的,而且用户
4、数据库也被传输到一台新服务器,则该数据库用户将从该登录中孤立出去。要传输原始SID并绕过被孤立的用户,请执行在不同版本的SQLServer之间传输登录和密码的完整解决方案一节中的步骤。 在不同版本的SQLServer之间传输登录和密码的完整解决方案 此方法适用于以下情况: •从SQLServer7.0向SQLServer7.0传输登录和密码。 •从SQLServer7.0向SQLServer2000传输登录和密码。 •从SQLServer7.0向SQLServer2005传输登录和密码。 •在运行SQLSer
5、ver2000的服务器之间传输登录和密码。 •从SQLServer2000向SQLServer2005传输登录和密码。 注意:请查看本文末尾的备注,以了解有关下列步骤的重要信息。 要在不同版本的SQLServer之间传输登录和密码,请按下列步骤操作:1.在源SQLServer上运行以下脚本。此脚本可在master数据库中创建名为sp_hexadecimal和sp_help_revlogin的两个存储过程。请在完成过程的创建之后继续执行第2步。 注意:下面的过程取决于SQLServer系统表。这些表的结构在SQLServer的不同版本之间可能会
6、有变化,请不要直接从系统表中选择。-----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
此文档下载收益归作者所有