SqlServer数据库主从同步

摘要:
4)配置分发数据库分发数据库以数据库文件的形式存储主库发布的数据变化。新建发布1)选择发布数据库2)选择发布类型SqlServer数据库提供了以下四种发布类型:快照发布发布服务器按预定的时间间隔向订阅服务器发送已发布数据的快照。适用于数据量小,允许数据延迟的主从数据库同步。

分发/订阅模式实现SqlServer主从同步

在文章开始之前,我们先了解一下几个关键的概念:

分发服务器
分发服务器是负责存储在同步过程中所用复制信息的服务器。可以比喻成报刊发行商。 分发数据库
分发数据库用于存储发布数据库所做的更改。它还可以存储快照和合并发布的历史信息。存在于系统数据库中,默认为destribution. 发布服务器
使服务器能够成为发布服务器后使用此分发服务器。它通过复制向其他位置提供数据。可以比喻成报刊出版商,实际生产报刊的地方。 发布数据库
包含要发布的数据或对象的数据库,即主库。 订阅服务器
从库(slave节点)所在的数据服务器。可以比喻成阅读报刊的人

环境准备

1.SqlServer2008R2数据库

2.启动数据库服务器SQL Server 代理 (MSSQLSERVER)服务

配置分发

分发服务器可以和发布服务器是同一台服务器,也可以单独指定分发服务器。本文以同一台服务器为例。

1)选择当前服务器作为分发服务器

SqlServer数据库主从同步第1张

SqlServer数据库主从同步第2张

SqlServer数据库主从同步第3张

2)启动SqlServer代理

SqlServer数据库主从同步第4张

3)配置快照文件夹

SqlServer数据库主从同步第5张

快照是可以存储主库数据架构和初始数据,也可以存储主库某一段时间内数据库发生的变化。

4)配置分发数据库

SqlServer数据库主从同步第6张

分发数据库以数据库文件的形式存储主库发布的数据变化。

新建发布

1)选择发布数据库

SqlServer数据库主从同步第7张

SqlServer数据库主从同步第8张

SqlServer数据库主从同步第9张

2)选择发布类型

SqlServer数据库提供了以下四种发布类型:

快照发布
发布服务器按预定的时间间隔向订阅服务器发送已发布数据的快照。
可以理解为发布数据库将一段时间间隔内的数据变化打包到数据文件中,一次性提交给订阅服务器。适用于数据量小,允许数据延迟的主从数据库同步。

事务发布
在订阅服务器收到已发布数据的初始快照后,发布服务器将事务流式传输到订阅服务器。
创建了初始快照后,接着在发布服务器上所做的数据更改和数据结构更改通常在修改后同步传递给订阅服务器,数据更改将按照其在发布服务器上的事务顺序应用于订阅服务器,保证了发布内的事务一致性。
事务发布能够将发布数据变化的信息及时传递给订阅服务,并在短时间内完成。数据近似于同步更新,适用于对数据实时性要求较高的场景。

具有可更新订阅的事务发布
在 SQL Server 订阅服务器收到已发布数据的初始快照后,发布服务器将事务流式传输到订阅服务器。来自订阅服务器的事务被应用于发布服务器。
在事务发布的基础上,支持订阅服务器向发布服务器提交更新。

合并发布
在订阅服务器收到已发布数据的初始快照后,发布服务器和订阅服务器可以独立更新已发布数据。更改会定期合并。Microsoft SQL Server Compact Edition 只能订阅合并发布。

SqlServer数据库主从同步第10张

3)选择要发布的数据库对象,可以是表,也可是某个字段

SqlServer数据库主从同步第11张

4)自定义数据过滤条件

SqlServer数据库主从同步第12张

5)快照代理

快照代理运行于分发服务器上,用于连接发布服务器,每个发布服务器都有专属于自己的一个快照代理。其主要作用是:将发布数据库的数据架构和初始数据同步到分发数据库中;存储快照文件并记录历史同步信息。

对于事务性发布,还存在日志读取器代理:该代理与事务性复制一起使用,运行于分发服务器上并与发布服务器连接。其主要作用是:将发布服务器上数据库事务日志中标记为复制的事务移至分发数据库中。SqlServer数据库主从同步第13张

6)配置代理账户,用于连接发布服务器

SqlServer数据库主从同步第14张

新建订阅

1)选择订阅的发布

SqlServer数据库主从同步第15张

SqlServer数据库主从同步第16张

SqlServer数据库主从同步第17张

2)配置订阅模式

推送订阅

分发服务器接收到分发服务器变化的数据之后,主动像订阅服务器推送。(推荐)

请求订阅

订阅服务器主动向分发服务器订阅变化的数据。如果选择请求订阅,那么订阅服务器需要能够访问分发服务器存储的快照文件夹位置。

分发代理

分发代理与快照复制和事务性复制一起使用。其主要作用是:将发布数据库初始快照发送到订阅服务器,并将分发数据库中保存的数据库事务移至订阅服务器。分发代理既可以运行于分发服务器(推送订阅模式),也可运行于订阅服务器(请求订阅模式)

SqlServer数据库主从同步第18张

3)配置订阅服务器和从库

SqlServer数据库主从同步第19张

4)配置订阅服务器代理账户

SqlServer数据库主从同步第20张

5)配置同步计划模式

SqlServer数据库主从同步第21张

6)初始化发布数据库数据和架构

SqlServer数据库主从同步第22张

以上步骤就完成了分发服务器、发布服务器和订阅服务器的配置。

同步过程(事务性复制):

SqlServer数据库主从同步第23张

1.发布服务器选择关联对应的分发服务器,快照代理将发布数据库数据架构和初始化数据存储到分发服务器上

2.当发布数据库数据变动时,日志读取器代理会将变更的事务日志记录到分发服务器指定的分发数据库文件中(日志文件和数据文件、.MDF—存储数据,.LDF—存储数据更新)

3.分发代理将分发数据库中的初始信息和变更信息更新到订阅服务器。

免责声明:文章转载自《SqlServer数据库主从同步》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇vue中 根据音频 获取音频的时长【Linux】 源码安装make命令详解,避免踩坑下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

SQLServer 2008以上误操作数据库恢复方法——日志尾部备份

[置顶] SQLServer 2008以上误操作数据库恢复方法——日志尾部备份 分类: 数据库管理日志最佳实践常见问题备份还原误操作完整性SQL ServerDatabase企业管理DBA安全2013-01-10 20:48 34970人阅读 评论(59) 收藏举报 sql server误操作恢复log日志备份 目录(?)[-] 问题 解决方法...

【讲座】朱正江——基于LC-MS的非靶向代谢组学

本次课程主题为《基于LC-MS的非靶向代谢组学》,主要分为代谢组学简介、代谢组学技术简介、非靶向代谢组学方法和数据采集、非靶向代谢组学数据分析和代谢物结构鉴定几个方面。 一、代谢组简介 基因组学——Whatcanhappen;转录组学——Whatappearstobehappening;蛋白组学——Whatmakeithappen;代谢组学——What...

MySQL 的简单介绍及实施

MySQL原本是一个开放源代码的关系数据库管理系统,原开发者为瑞典的MySQL AB公司,该公司于2008年被Sun公司收购。2009年,甲骨文公司收购Sun公司,MySQL成为Oracle旗下产品。MySQL 是最流行的关系型数据库管理系统(RDBMS)之一。 1. 数据库产品时代演变 第一代数据库架构:合的时代 RDBMS 关系型数据库时代   代...

第10章 数据库恢复技术 | 数据库知识点整理

第10章 数据库恢复技术 了解 数据库的一致性状态 数据库运行中可能产生的故障类型,它们如何影响事务的正常执行,如何破坏数据库数据 数据转储的概念及分类 数据库的镜像功能 掌握 事务的基本概念和事务的ACID性质 数据库恢复的实现技术 日志文件的内容及作用 登记日志文件所要遵循的原则 具有检查点的恢复技术 恢复的基本原理 针对不同故障的恢复策略和方法...

DAVID 进行 GO/KEGG 功能富集分析

何为功能富集分析? 功能富集分析是将基因或者蛋白列表分成多个部分,即将一堆基因进行分类,而这里的分类标准往往是按照基因的功能来限定的。换句话说,就是把一个基因列表中,具有相似功能的基因放到一起,并和生物学表型关联起来。 何为GO和KEGG? 为了解决将基因按照功能进行分类的问题,科学家们开发了很多基因功能注释数据库,。这其中比较有名的一个就是Gene On...

MSSQL数据库各角色权限

固定数据库角色  描述  db_owner  在数据库中有全部权限。  db_accessadmin  可以添加或删除用户 ID。  db_securityadmin  可以管理全部权限、对象所有权、角色和角色成员资格。  db_ddladmin  可以发出 ALL DDL,但不能发出 GRANT、REVOKE 或 DENY 语句。  db_backup...