SQL SERVER【非域环境】同步复制(事务)之准备篇(1)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/roy_88/article/details/70316525

准备工作:

1、网络环境:

服务器类型

服务器名称

分发服务器

YQFSER226

发布服务器

YQFSER135

订阅服务器

YQFSER134

软件环境:

操作系统

数据库环境

Windows Server 2012 R2 Standard

Microsoft SQL Server 2014 - 12.0.2000.8(X64)

         Feb 20 2014 20:04:26

         Copyright(c) Microsoft Corporation

         Enterprise Edition(64-bit)

2、WINDOWS环境检查并配置

2.1、分别在三台服务器"SQL SERVER代理"服务设置为自启动;
2.2、分别关闭三台服务器的防火墙(或把端口1433或指定端口设置为例外);
2.3、分别在三台服务器本地安全策略把"密码最长使用期限"设置为0(不过期)



2.4、分别在三台服务器创建同名WINDOWS账号(repl_snapshot),这里简化操作只创建一个账号



3、分别在发布服务器和订阅服务器(创建数据库和表),用于搭建同步环境,测试用数据库(TEST)

USE [master]
GO

/****** Object:  Database [TEST]    Script Date: 2017/4/21 10:51:58 ******/
CREATEDATABASE [TEST]
GO
USE [TEST]
GO
CREATETABLE GUIDTab(
ID UNIQUEIDENTIFIERROWGUIDCOLCONSTRAINT PK_GUIDTab PRIMARYKEYNONCLUSTERED,
Name NVARCHAR(50)
);
CREATETABLE IDENTab(
ID INTIDENTITY(1,1)CONSTRAINT PK_IDENTab PRIMARYKEY,
Name NVARCHAR(50)
);

4、 分发服务器把新创建的WINDOWS(步骤2.4)映射为SQL SERVER账号并设置权限,设置SQL SERVER服务器角色



5、 在发布服务器把新创建的WINDOWS(步骤2.4)映射为SQL SERVER账号并设置权限


6、在订阅端服务器把新创建的WINDOWS(步骤2.4)映射为SQL SERVER账号并设置权限

6.1 同上(步骤4)
6.2 配置文件夹读写权限[WINDOWS账号(repl_snapshot)]

默认安装路径:C:\Program Files\Microsoft SQL Server

      C:\Program Files(x86)\Microsoft SQL Server



7、在分发服务器配置设置共享文件夹(ReplData)并配置读写权限[WINDOWS账号(repl_snapshot)]

      共享路径:\\YQFSER226\ReplData

8、在订阅端服务器,配置有标识列(不用于复制设置为是)


--生成T-SQL语句
SELECT'ALTER TABLE '+QUOTENAME(b.name)+' ALTER COLUMN '
+QUOTENAME(a.name)+' ADD  NOT FOR REPLICATION;'
FROM sys.columnsAS a
INNER JOIN sys.tablesAS b ON a.object_id= b.object_id
WHERE   a.is_identity = 1;

--在订阅端执行(生成T-SQL语句)
--ALTER TABLE [IDENTab] ALTER COLUMN [ID] ADD  NOT FOR REPLICATION;


猜你喜欢

转载自blog.csdn.net/roy_88/article/details/70316525