none
sql server 2008 R2链接服务器问题 RRS feed

  • 问题

  • 服务器A上有数据库A1,服务器B上有数据库B1;在A1上用链接服务器的方式链接B1数据库,成功链接;在A1上可以对B1上的数据库进行查询;但是intert/update/delete时,出现了如下的提示;请高手帮我一下


    大其心,可容天下之物; 虚其心,可受天下之善;

    2013年2月1日 4:32

答案

全部回复

  • 应该是没有配置好分布式事务, 网上很多的, 参考这个去做检查吧

    http://www.cnblogs.com/chnking/archive/2007/04/04/699891.html

    • 已标记为答案 lfofiug 2013年2月5日 8:07
    2013年2月1日 7:08
  • 我试过了,不行


    大其心,可容天下之物; 虚其心,可受天下之善;

    2013年2月1日 7:49
  • Is msdtc running on all involved machine? Did you enable network access in msdtc?

    • 已标记为答案 lfofiug 2013年2月5日 8:07
    2013年2月1日 14:06
  • 所有服务器上的这个服务都启动了;http://www.cnblogs.com/chnking/archive/2007/04/04/699891.html这上面的方法我也试过了;

    还是那个错误


    大其心,可容天下之物; 虚其心,可受天下之善;


    • 已编辑 lfofiug 2013年2月5日 3:14
    • 已标记为答案 lfofiug 2013年2月5日 8:07
    2013年2月5日 3:01
  • Can you post your sql code?
    • 已标记为答案 lfofiug 2013年2月5日 8:07
    2013年2月5日 3:44
  •      

    服务器A上表Table_1与服务器B上的表Table_1结构一样;

    ALTER TRIGGER [dbo].[T_Table_1] ON [dbo].[Table_1]
        FOR INSERT
    AS
        BEGIN
            INSERT  [IP,Port].RPMSSoln_Total.dbo.Table_1
                    ( T )
                    SELECT  T
                    FROM    INSERTED

        END

    当我向服务器A中表Tabble_1中insert数据时,会出现“链接服务器 "IP,Port" 的 OLE DB 访问接口 "SQLNCLI10" 无法启动分布式事务”提示;

    我把所有服务器上的相关进程都启动了,服务器重新启动,仍是不行;

    但我可以在服务器A中写select * from  [IP,Port].RPMSSoln_Total.dbo.Table_1 ,系统正常;

    问题是不能在触发器中insert/update/delete


    大其心,可容天下之物; 虚其心,可受天下之善;




    • 已编辑 lfofiug 2013年2月5日 4:40
    2013年2月5日 4:19
  • 我找到答案了,是虚拟机的问题,虚拟机是复制的;故SID都是一样的,把虚拟机的SID修改就OK了;


    大其心,可容天下之物; 虚其心,可受天下之善;


    • 已编辑 lfofiug 2013年2月5日 8:08
    2013年2月5日 8:07