转---sqlserver 复制---订阅与发布(概念介绍比较好)

转自:http://www.cnblogs.com/yuqilin/archive/2011/04/28/2031274.html

SQL Server 复制 订阅与发布

  接触 SQL Server 很长时间了,做了很多项目,但是对sql Server的订阅和发布知之不多,现在把订阅与发布的相关知识总结起来,以供大家拍砖。以下内容参考webcast

  SQL Server 的复制技术 包括 订阅和发布

  复制的组成部分:发布服务器(出版社),分发服务器(邮局),订阅服务器(读者,接受者)

  发布服务器的作用:维护源数据库,由这些数据库出版的数据能够为复制所利用,检测并将所有出版数据的更改发送到分发服务器

  分发服务器的作用:分发服务器包括分发数据库,并且存储元数据、历史数据和事务。根据所实施复制类型的不同,分发服务器所扮演的角色也各异,一般情况下与合并复制相比较,分发服务器对于快照复制和事务复制的角色更重要。

  订阅服务器的作用:保持数据的副本,并接收对所修改出版的更改。取决于所实现的复制选项,可能还允许更新者更新数据,并将其复制回服务器或者其它订阅者。

  复制的模式:推模式(Push),拉模式(Pull) 区别:分发代理程序在分发服务器上运行,即为推模式,在订阅服务器运行,即为拉模式。

  复制的类型:快照复制,事务复制、合并复制。允许订阅更新的快照复制。允许订阅更新的事务复制。

  详细分类:带立即更新的快照复制,带立即更新的事务复制,这两种都是采用的分布式的事务处理原理。快照复制是事务复制的基础,快照复制传输的包括表结构等信息。在订阅服务器上创建,然后是分发代理程序,传输数据。

  出版物:发布服务器发布的一个整体。一个出版物能够包括一个或多个文章,文章可以是数据或数据库对象。因为出版中的所有文章能能够在相同时刻保持同步。出版物是订阅的基础,对出版物的订阅包括出版物中的所有文章,每个用户数据库中能够构创建一个或多个出版物。

  文章:出版物的一部分,表或数据库的对象(存储过程、视图、用户自定义函数)的全部或者部分筛选分区数据。

  复制代理:快照代理(snapshot agent) 分布式代理(Distribution agent) 日志读代理(log Reader agent) 合并代理(Merge agent) 队列读代理(Queue Reader Agent)

  快照复制的工作机制:

    1、发布服务器,将要发布的数据库整个做一个快照,

    2、订阅服务器的快照代理程序把发布服务器的快照读取过来,放在本地的快照文件夹内

    3、订阅服务器的发布代理程序把快照文件夹中的快照发布到订阅服务器上。历史记录和快照记录在分发服务器中。

  事务复制的基本原理:

    1、初始数据和架构(通过快照复制来完成),从这里可以体现出来快照复制,是所有复制的基础 。快照复制在订阅服务器上建立了订阅数据库。

    2、发布服务器的数据修改后,写事务日志,

    3、分发服务器的日志读取代理读取发生改变的数据的事务日志,把这些事务日志保存在发布服务器的发布数据库中。

    4、分发服务器的分发代理程序 将分发数据库中的事务日志分发到各个订阅服务器上,然后把历史记录和错误记录在分发数据库中。

时间: 2024-11-05 01:02:02

转---sqlserver 复制---订阅与发布(概念介绍比较好)的相关文章

SQL Server 复制 订阅与发布

SQL Server 的复制技术 包括 订阅和发布 复制的组成部分:发布服务器(出版社),分发服务器(邮局),订阅服务器(读者,接受者) 发布服务器的作用:维护源数据库,由这些数据库出版的数据能够为复制所利用,检测并将所有出版数据的更改发送到分发服务器 分发服务器的作用:分发服务器包括分发数据库,并且存储元数据.历史数据和事务.根据所实施复制类型的不同,分发服务器所扮演的角色也各异,一般情况下与合并复制相比较,分发服务器对于快照复制和事务复制的角色更重要. 订阅服务器的作用:保持数据的副本,并接

SQL Server 复制:事务发布(读写分离)

一.背景 在复制的运用场景中,事务发布是使用最为广泛的,我遇到这样一个场景:在YangJiaLeClub数据库中有表.存储过程.视图.用户定义函数,需要提供给其它程序读取放入缓存,程序需要比较及时的获取到这些数据,需要从权限和性能控制的角度出发,我采用了SQL Server的事务复制技术和timestamp,下面只讲述事务复制的搭建过程: 二.实现过程 (一) 环境信息   操作系统 IP 服务器名称 数据库版本 数据库名称 数据库帐号信息 发布服务器 Windows 10 企业版  192.1

第七篇 Replication:合并复制-订阅

本篇文章是SQL Server Replication系列的第七篇,详细内容请参考原文. 订阅服务器就是复制发布项目的所有变更将传送到的服务器.每一个发布需要至少一个订阅,但是一个发布可以有多个订阅.这一篇假设你遵循了前面六篇,并且你已经配置好合并发布.配置订阅为了能创建订阅,你必须使用一个(能够访问订阅服务器和发布服务器的)登录名连接到数据库.另外,这个登录名至少需要是订阅数据库和发布数据库的db_owner角色的成员.连接到发布服务器首先你需要在对象资源管理器下连接到订阅服务器.打开复制文件

SQLServer 复制和数据库镜像 详细配置部署

SQLserver 可以把镜像和复制同时部署,结合了双方的高可用性,可以使数据库得到更好的高可用性和容灾的保证. 关于镜像:数据库镜像 关于复制:数据库镜像 本章的复制为事务可更新订阅:事务复制的可更新订阅 关于复制和数据库镜像:复制和数据库镜像 理论的东西参考官方文档吧,这里主要是部署配置过程. 下图为本章参考部署的架构图: 本章模拟的服务器: kk-ad 192.168.2.1 DC(域控) kk-db1 192.168.2.10 主机(Replication + Mirror) kk-db

SQL Server 复制订阅

原文:SQL Server 复制订阅 标签:SQL SERVER/MSSQL SERVER/数据库/DBA/高性能解决方案/高可用 概述 配置复制就没有数据库镜像和AlwaysOn的要求那么高,只需要两台服务器能通过TCP进行通讯即可,两台服务器操作系统和SQL版本都可以不完全一致,而且两台服务器也不需要加入域,所以配置复制订阅就简单多了,但是复制订阅主要是针对数据表而不能像镜像和AlwaysOn那样配置整个数据库,这也是它的缺点吧. 接下来主要除了前面介绍配置复制订阅后面还会解释一些需要注意的

Replication的犄角旮旯(八)-- 订阅与发布异构的问题

原文:Replication的犄角旮旯(八)-- 订阅与发布异构的问题 <Replication的犄角旮旯>系列导读 Replication的犄角旮旯(一)--变更订阅端表名的应用场景 Replication的犄角旮旯(二)--寻找订阅端丢失的记录 Replication的犄角旮旯(三)--聊聊@bitmap Replication的犄角旮旯(四)--关于事务复制的监控 Replication的犄角旮旯(五)--关于复制identity列 Replication的犄角旮旯(六)-- 一个DDL

如何暂停sqlserver数据订阅服务

原文:如何暂停sqlserver数据订阅服务 从 Management Studio 启动和停止快照代理或日志读取器代理 在 Management Studio 中连接到发布服务器,然后展开服务器节点和"复制"文件夹. 展开"本地发布"文件夹,然后右键单击发布. 单击"查看快照代理状态"或"查看日志读取器代理状态". 单击"启动"或"停止". 从 Management Studio 启动

Shiro权限控制框架入门1:Shiro的认证流程以及基本概念介绍

前言:我在最开始学习Shiro这个框架时,在网上搜索到的一个介绍比较全面的教程是:<跟我学Shiro>系列教程.但是在我看了他写的前几篇文章后,我发现虽然他在这个系列教程中把shiro的一些特性介绍地非常全面详细,但是整个教程的叙述方式还是有很大缺陷的.文章与文章之间并没有很好地串联起来,每篇文章介绍的东西都过于分散了,如果是对shiro完全不了解的新手来看的话完全是一场噩梦.就像一个网友评价的这样: 看了看这个教程,看完之后都想放弃shiro了,完全看不懂,后来百度了很多别的资料才理解了sh

linux下使用hiredis异步API实现sub/pub消息订阅和发布的功能

最近使用redis的c接口--hiredis,使客户端与redis服务器通信,实现消息订阅和发布(PUB/SUB)的功能,我把遇到的一些问题和解决方法列出来供大家学习. 废话不多说,先贴代码. redis_publisher.h /************************************************************************* > File Name: redis_publisher.h > Author: chenzengba > Ma