日期:2014-05-18  浏览次数:20486 次

求解SQL SERVER 分布式问题
1。sp_addlinkserver   用法,为什么我总是加不对呢
192.168.0.2   sa   sa   pubs,请给出例码
2。SQLOLEDB无法启动分布式事务
所有分布式相关都已经启动,求原因

问题解决,马上结贴

------解决方案--------------------
1、运行 regedt32,浏览至 HKEY_LOCAL_MACHINE\Software\Microsoft\MSDTC。
添加一个 DWORD 值 TurnOffRpcSecurity,值数据为 1。
2、重启MS DTC服务。
3、打开“管理工具”的“组件服务”。
a. 浏览至 "启动管理工具 "。
b. 选择 "组件服务 "。
c. 展开 "组件服务 "树,然后展开 "我的电脑 "。
d. 右键单击 "我的电脑 ",然后选择 "属性 "。
在 MSDTC 选项卡中,确保选中了下列选项:
网络 DTC 访问
网络管理
网络事务
XA 事务
另外, "DTC 登录帐户 "一定要设置为 "NT Authority\NetworkService "。
4、重启MS DTC服务。
5、再次运行 regedt32,浏览至 HKEY_LOCAL_MACHINE\Software\Microsoft\MSDTC,然后删除 TurnOffRpcSecurity 项。
------解决方案--------------------
sp_addlinkedserver [ @server= ] 'server ' [ , [ @srvproduct= ] 'product_name ' ]
[ , [ @provider= ] 'provider_name ' ]
[ , [ @datasrc= ] 'data_source ' ]
[ , [ @location= ] 'location ' ]
[ , [ @provstr= ] 'provider_string ' ]
[ , [ @catalog= ] 'catalog '

sp_addlinkedsrvlogin [ @rmtsrvname = ] 'rmtsrvname '
[ , [ @useself = ] 'useself ' ]
[ , [ @locallogin = ] 'locallogin ' ]
[ , [ @rmtuser = ] 'rmtuser ' ]
[ , [ @rmtpassword = ] 'rmtpassword ' ]
具体看联机帮助!
------解决方案--------------------
EXEC sp_addlinkedserver @server= 'serverA ', @srvproduct= ' ', @provider= 'SQLOLEDB ', @datasrc= '192.168.0.28 '
EXEC sp_addlinkedsrvlogin @rmtsrvname= 'serverA ', @useself= 'false ', @rmtuser = 'sa ',@rmtpassword = 'aaa '

Exec sp_serveroption 'serverA ', 'lazy schema validation ', 'true '

------解决方案--------------------
2005的话-配置工具-sqlserver2005外围应用配置器-服务和连接的外围应用配置器-远程连接-本地连接和远程连接试试
------解决方案--------------------
http://www.cnblogs.com/chnking/archive/2007/04/04/699891.html
------解决方案--------------------
http://community.csdn.net/Expert/topic/5394/5394427.xml?temp=.3764002