SQL Server教程 - SQL Server 复制(Replication)
更新记录
转载请注明出处:https://www.cnblogs.com/cqpanda/p/16556438.html
2022年8月8日 发布。
2022年8月6日 从笔记迁移到博客。
SQL Server 复制(Replication)
复制概述#
复制的类型#
概述#
快照复制
事务复制
合并复制
Oracle发布
对等复制
快照复制#
说明#
如同其名称,是一份执行复制时数据与数据库对象的快照
按指定的时间间隔生成一份数据快照,然后发送到订阅的服务器
快照复制是单向的数据复制
快照复制发送的是整个数据集,并不跟踪DML变更
因为不跟踪DML变更,可以提升性能
如果快照非常打,数据分发到目的地将是一个很长的过程
适合场景#
复制、迁移少量数据
以较长周期(每日、每晚)进行数据复制的场景
数据更新频率不高的场景
高延迟场景,不适合实时性要求高的场景
事务复制#
说明#
事务复制也是由快照复制开始
当发布服务器上的初始快照数据与架构发生变化时,异步(有序)地分发给服务器
订阅服务器接收到变更事务,从而保证了与发布服务器数据一致
事务复制是单向的数据复制
适合场景#
几乎实时地将数据发布到一个或多个订阅服务器
数据量有持续的增长
有大量事务性数据,或者更新频繁
将数据变化连续的发送给订阅服务器
适合于一台服务器作为数据源,另一台作为数据备份或其他任务的服务器的场景
合并复制(Merge Replication)#
说明#
合并复制也是由快照复制开始
使用触发器跟踪发布服务器和订阅服务器上的数据和架构变更
订阅服务区再连接到网络时将于发布服务器进行同步
交换自上次同步以来发布服务器和订阅服务器之间发生更新的所有行
在发布者和订阅者之间复制差异
合并复制是双向的数据复制
适合场景#
Oracle发布#
一般用于将Oracle数据库迁移到SQL Server数据库
对等复制#
复制代理#
说明#
在服务器之间复制移动数据和数据库对象是一个巨大工程
可以使用复制代理辅助完成该工作
SQL Server支持的4中代理:
快照代理
分发代理
日志读取器代理
合并代理
快照代理#
说明#
各类复制都是用快照来进行复制进程
快照代理产生快照文件
快照文件包含需要的数据和数据库对象
快照代理将全部数据写入到文件中
快照代理运行在SQL Server发布服务器实例上
分发代理#
用于快照和事务复制中
快照复制使用分发代理将生成的快照分发给所有的订阅服务器
事务复制使用分发代理将快照和变更分发给订阅服务器
分发代理运行在分发服务器的SQL Server实例上,用来推送订阅内容
分发代理运行在订阅服务器的SQL Server实例上,用来请求订阅内容
日志读取器代理#
日志读取代理仅用于事务复制
将发布服务器上的事务日志编辑为复制事务移动到分发数据库中
合并代理#
合并代理仅用于合并复制中
合并代理将初始快照和发布服务器上的后续更新推送到订阅服务器
合并代理检测源(发布服务器)与目的(订阅服务器)上自最近一次按计划运行的合并代理以来发生的更新
配置SQL Server复制#
说明#
典型的复制拓扑结构至少有一台发布服务器与一台订阅服务器组成
配置复制-使用SSMS#
配置分发#
接下来按默认的配置项,直接按下一步即可
配置事务发布服务器#
配置事务订阅服务器#
新建数据库用于接收数据
USE master;
CREATE DATABASE PandaReceiver;
进入订阅界面,新建订阅
作者:重庆熊猫
出处:https://www.cnblogs.com/cqpanda/p/16556438.html
版权:本作品采用「不论是否商业使用都不允许转载,否则按3元1字进行收取费用」许可协议进行许可。
本文来自博客园,作者:重庆熊猫,转载请注明原文链接:https://www.cnblogs.com/cqpanda/p/16556438.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?