--注册远程服务器
exec sp_addlinkedserver '别名','','SQLOLEDB','服务器名或者IP'
exec sp_addlinkedsrvlogin '别名','false',null,'sa','sa'
--示例
exec sp_addlinkedserver 'WWW-07D4401AC5D','','SQLOLEDB','WWW-07D4401AC5D'
exec sp_addlinkedsrvlogin 'WWW-07D4401AC5D','false',null,'sa','sa'
select * from [WWW-07D4401AC5D].su.dbo.su
alter trigger tr_insert_author on su
for insert
as
set xact_abort on
--启动远程服务器的MSDTC服务
exec master..xp_cmdshell 'isql /S"WWW-07D4401AC5D" /U"sa" /P"sa" /q"exec master..xp_cmdshell ''net start msdtc'',no_output"',no_output
--启动本机的MSDTC服务
exec master..xp_cmdshell 'net start msdtc',no_output
insert [WWW-07D4401AC5D].su.dbo.su(name,age)
values ('tony',20)
-------------------触发器------------
use[MKT5]
go
create trigger tr_insert_active_info on active_info
INSTEAD OF insert
as
set xact_abort on
insert wff.MKT5.dbo.active_info
select * from inserted
go
--修改同步
create trigger tr_update_active_info on active_info
INSTEAD OF update
as
set xact_abort on
declare @PK varchar(50),@table_name varchar(50),@sql varchar(5000)
set @table_name = 'active_info'
exec GetPK @table_name,null,null,@PK output
select @sql = (
N'delete b
from active_info b,deleted d
where b.'+@PK +'=d.'+@PK)
exec @sql
insert wff.MKT5.dbo.active_info
select * from inserted
go
--删除同步
create trigger tr_delete_active_info on active_info
INSTEAD OF delete
as
set xact_abort on
declare @PK varchar(50),@table_name varchar(50),@sql varchar(5000)
set @table_name = 'active_info'
exec GetPK @table_name,null,null,@PK output
select @sql = (
N'delete b
from active_info b,deleted d
where b.'+@PK +'=d.'+@PK)
exec @sql
go
PS:远程数据同步,必须打开MSDTC,必须打开135端口
启用网络 DTC 访问的步骤
启用网络DTC是分布式数据库事物控制的必要条件。设置过程应依下面步骤进行。
1) 单击“开始”,指向“控制面板”,然后单击“添加或删除程序”;
2) 单击“添加/删除 Windows 组件”;
3) 选择“应用程序服务器”,然后单击“详细信息”;
4) 选择“启用网络 DTC 访问”, 网络管理 、网络事务、XA 事务。另外,DTC 登录帐户一定要设置为“NT Authority"NetworkService”,并且事务管理器通讯不要求进行验证。然后单击“确定”;
5) 单击“下一步”;
6) 单击“完成”;
7) 停止分布式事务处理协调器服务,然后重新予以启动;
8) 停止 Microsoft SQL Server 和其他参与分布式事务处理的资源管理器服务(如 Microsoft 消息队列),然后将其重新启动。
二、Windows xp配置MSDTC的方法
控制面板-----〉管理工具-----〉组件服务
选择组件服务-----〉计算机--------〉我的电脑,再点击鼠标右键。
“点击安全性配置(I)….”按钮,选择项如下: