Windows SQL Server 主从复制

Posted by Sunday on 2018-09-26

注:只有设置主键的表才能同步

SQL测试库代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
CREATE DATABASE PUBLISHDB
GO
USE PUBLISHDB
GO
CREATE TABLE TEST
(
ID VARCHAR(10) PRIMARY KEY NOT NULL,
NAME VARCHAR(10)
)
GO
INSERT INTO TEST VALUES ('1','A')
INSERT INTO TEST VALUES ('2','B')
INSERT INTO TEST VALUES ('3','C')
INSERT INTO TEST VALUES ('4','D')
INSERT INTO TEST VALUES ('5','E')
INSERT INTO TEST VALUES ('6','F')
INSERT INTO TEST VALUES ('7','G')

创建复制用户

分别在master slave服务器创建repl
11

数据库 安全性 登陆名 添加 repl 用户
11
11
11

创建复制目录及共享设置

11
11
记录网络共享路径

复制-配置分发

11
11
11
11
11
11
11
11

启动SQL代理

11

复制- 新建发布

11
11
11
11
11
11
11
11
这里的进程帐户是master 的
11
11
11
11
11

11
11

复制-本地发布-新建订阅

11
11
11
11

11
新建数据库
11
11
在这里要设置slave repl用户权限
11

11
11
11
11
11
11
11
11
11

测试

USE PUBLISHDB
INSERT INTO TEST VALUES (‘8’,’H’)
查看从同步

https://docs.microsoft.com/zh-cn/sql/relational-databases/replication/tutorial-preparing-the-server-for-replication?view=sql-server-2017