用脚本从一个SQLServer连另一个SQLServer的问题
需求是这样:
有两个SQLServer,一个假设是ServerA,一个是ServerB
根据网上查得的资料,可以这么操作
EXEC sp_addlinkedserver
@server='DBVIP',--服务器别名
@srvproduct='',
@provider='SQLOLEDB',
@datasrc='192.168.6.155' --要访问的服务器
GO
执行这一步,结果为
(所影响的行数为 1 行)
(所影响的行数为 1 行)
EXEC sp_addlinkedsrvlogin 'DBVIP',False,NULL,'sa','sa' --密码
GO
执行这一步,结果
(所影响的行数为 0 行)
(所影响的行数为 1 行)
(所影响的行数为 0 行)
(所影响的行数为 1 行)
Select * from DBVIP.NetKing.dbo.MyTable
下SQL时,报错:
服务器: 消息 18452,级别 14,状态 1,行 1
用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联。
不知为什么。
说明:两个SQLServer登录模式为Windows和SQLServer混合模式。
------解决方案--------------------先创建链接服务器.
------解决方案--------------------用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联
错误提示信息已说明情况了............
------解决方案--------------------1.在服务器端使用企业管理器,并且选择"使用 Windows 身份验证"连接上 SQL Server
操作步骤:
在企业管理器中
--右键你的服务器实例(就是那个有绿色图标的)
--编辑SQL Server注册属性
--选择"使用windows身份验证"
--选择"使用SQL Server身份验证"
--登录名输入:sa,密码输入sa的密码
--确定
2.设置允许SQL Server身份登录
操作步骤:
在企业管理器中
--展开"SQL Server组",鼠标右键点击SQL Server服务器的名称
--选择"属性"
--再选择"安全性"选项卡
--在"身份验证"下,选择"SQL Server和 Windows ".
--确定,并重新启动SQL Server服务.
------解决方案-------------------- 在以上解决方法中,如果在第 1 步中使用"使用 Windows 身份验证"连接 SQL Server 失败, 那就通过修改注册表来解决此问题:
1.点击"开始"-"运行",输入regedit,回车进入注册表编辑器
2.依次展开注册表项,浏览到以下注册表键:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer]
3.在屏幕右方找到名称"LoginMode",双击编辑双字节值
4.将原值从1改为2,点击"确定"
5.关闭注册表编辑器
6.重新启动SQL Server服务.
此时,用户可以成功地使用sa在企业管理器中新建SQL Server注册,
但是仍然无法使用Windows身份验证模式来连接SQL Server.
这是因为在 SQL Server 中有两个缺省的登录帐户:
BUILTIN\Administrators
<机器名>\Administrator 被删除.
要恢复这两个帐户,可以使用以下的方法: