原文:SQLServer 2005 数据库定阅复制实现双机热备(主要是sharepoint 内容数据库)

场景

  公司最近的sharepoint的数据库服务器老是出问题,并且在一旦出现问题,就导致无法正常工作。最主要的是我们要加班还原以前的数据库,这是最头疼的。于是在网上查找资料,实现主备机的同步,对于sharepoint而言我们只需做到sharepoint的内容数据库同步即可。这种技术有个专业名词叫做双机热备

双机热备原理

双机热备特指基于高可用系统中的两台服务器的热备(或高可用),因两机高可用在国内使用较多,故得名双机热备,双机高可用按工作中的切换方式分为:主-备方式(Active-Standby方式)和双主机方式(Active-Active方式),主-备方式即指的是一台服务器处于某种业务的激活状态(即Active状态),另一台服务器处于该业务的备用状态(即Standby状态)。而双主机方式即指两种不同业务分别在两台服务器上互为主备状态(即Active-Standby和Standby-Active状态)。

我们主要是通过SQL Server 2005 订阅复制功能来实现双机热备,如下图所示:

SQL Server 2005 订阅复制原理

下面的概述来自微软官方的MSDN

SQL Server 2005 复制种类

  • 事务复制概述:

          事务性复制通常从发布数据库对象和数据的快照开始。拍摄初始快照后,随后在发布服务器中所做的数据更改和架构修改通常在修改发生时便传递给订阅服务器。数据更改在订阅服务器中应用的更改顺序以及更改所处的事务边界与在发布服务器中相同。

事务性复制通常用于服务器到服务器环境中,在以下各种情况下适合采用事务性复制:

  1. 希望发生增量更改时将其传播到订阅服务器。
  2. 从发布服务器中发生更改,到更改到达订阅服务器,应用程序需要这两者之间具有较低的滞后时间。
  3. 应用程序需要访问中间数据状态。例如,如果某一行更改了五次,事务复制允许应用程序对每次更改做出响应,而不只是对该行的最终数据更改做出响应。
  4. 发布服务器有大量的插入、更新和删除活动。
  5. 发布服务器或订阅服务器不是 SQL Server 数据库(例如,Oracle)。
  • 合并复制概述

          与事务复制相同,合并复制通常也是从发布数据库对象和数据的报表快照开始。并用触发器跟踪在发布服务器和订阅服务器中所做的后续数据更改和架构修改。订阅服务器与发布服务器在连接到网络时进行同步,并交换自上次同步以来发布服务器和订阅服务器间发生变化的所有行。

合并复制通常用于服务器到客户端的环境中。合并复制适用于下列各种情况:

  1. 多个订阅服务器可能会在不同时间更新同一数据,并将这些更改传播到发布服务器和其他订阅服务器。
  2. 订阅服务器需要接收数据,脱机更改数据,并在以后与发布服务器和其他订阅服务器同步更改。
  3. 每个订阅服务器都需要不同的数据分区。
  4. 可能会发生冲突。如果发生冲突,则需要具备检测和解决冲突的功能。
  5. 应用程序需要最终的数据更改结果,而不是访问中间数据状态。例如,如果在订阅服务器与发布服务器进行同步之前,订阅服务器中的行更改了五次,则该行在发布服务器中仅更改一次,并更改为第五个值以反映最终数据更改。

合并复制允许不同站点自主工作,然后在以后将更新合并成一个统一的结果。由于更新是在多个服务器中进行,因此,同一数据可能由发布服务器和多个订阅服务器进行了更新。于是,合并更新时就可能出现冲突。合并复制提供有数种处理冲突的方法。

  • 快照复制

    快照复制将数据以特定时刻的瞬时状态分发,而不监视对数据的更新。如果发生了同步,就会生成完整的快照并将其发送到订阅服务器。

当符合以下一个或多个条件时,使用快照复制本身是最合适的:

  1. 数据更改不频繁。
  2. 在一段时间内允许具有相对发布服务器已过时的数据副本。
  3. 复制少量数据。
  4. 短期内发生大量更改。

我们采用的是快照的方式复制订阅sharepoint内容数据库。


废话少说,我们先来看一下截图:

其中OADB05是主服务器数据库而OADB05BACKUP是备份环境数据库。

        图 1

点击打开复制然后右击“本地复制”,选择复制类型,然后点击下一步

                    图3

选择需要复制表的属性

                                  图4

选择下一步,如果需要更改复制操作时间,请点击更改,点击下一步

点击完成,复制就完成了啊。

由于图很多,所以只是一部分。下面是订阅的,右击点击本地订阅选择发布的数据库,

点击下一步下一步。就ok了啊

由于图太多,没有一个一个上传,如果大家有什么问题随时联系我。或者我的方案不好的,可以提出来,大家一起讨论。

SQLServer 2005 数据库定阅复制实现双机热备(主要是sharepoint 内容数据库)的更多相关文章

  1. MySQL数据库配置主从服务器实现双机热备

    转自:http://www.cnblogs.com/cchun/p/3712637.html 一.安装MySQL 说明:在两台MySQL服务器192.168.21.169和192.168.21.168 ...

  2. MySQL7.5.15数据库配置主从服务器实现双机热备实例教程

    环境说明 程序在:Web服务器192.168.0.57上面 数据库在:MySQL服务器192.168.0.67上面 实现目的:增加一台MySQL备份服务器(192.168.0.68),做为MySQL服 ...

  3. MySQL数据库双机热备------主-主备份配置

    MySQL数据库双机热备------主-主备份配置 实验环境: 主1数据库 192.168.1.1 centos6.5 x86_64 +MySQL5.5.35 主2数据库192.168.1.2  Wi ...

  4. MySQL5.7.15数据库配置主从服务器实现双机热备实例教程

    环境说明 程序在:Web服务器192.168.0.57上面 数据库在:MySQL服务器192.168.0.67上面 实现目的:增加一台MySQL备份服务器(192.168.0.68),做为MySQL服 ...

  5. oracle数据库基于(streams流复制)的双机热备配置手册

    ------------------------------------------------------------------------------- 主数据库: 操作系统:windows 2 ...

  6. Nginx+keepalived双机热备(主主模式)

    IP说明: master机器(master-node):10.0.0.5/172.16.1.5   VIP1:10.0.0.3slave机器(slave-node): 10.0.0.6/172.16. ...

  7. (技能篇)双机热备之Oracle切换故障处理

    背景: 以前做的的一个项目中使用了某国产双机热备产品,但是在数据库做双机热备时出现了一些问题,没办法.不得不研究一番了!经过两天的研究终于问题得以解决.将问题处理步骤记录下来以备后用,也希望能帮助到需 ...

  8. 物联网架构成长之路(9)-双机热备Keepalived了解

    1. 前言 负载均衡LB,高可用HA,这一小结主要讲双机热备方案保证高可用.这里选择Keepalived作为双机热备方案,下面就对具体的配置进行了解.2. 下载Keepalived wget http ...

  9. SqlServer双机热备技术实践笔记

    SqlServer双机热备,大体上可以通过发布订阅,日志传送,数据库镜像来实现. 1,发布--订阅 是最早最简单的方案,但需要注意发布的时候,发布进程必须对快照目录有访问权限,这个问题可以从“查看快照 ...

随机推荐

  1. HDU 1541 Stars (树状数组)

    Problem Description Astronomers often examine star maps where stars are represented by points on a p ...

  2. C和指针 (pointers on C)——第十章:结构和联合(下一个)锻炼

    //1.本章只为了刷存在演习.. . typedef struct phone { char * quhao; char * jiaohuantai; char * zhanhaoma; }; typ ...

  3. ZendFramework2学习笔记 json和ajax

    单程: View服务寄存器ViewJsonStrategy之后,有可能直接在控制器action是使用JsonViewModel输出json的数据. 注冊ViewJsonStrategy: //modu ...

  4. (DDD)仓储的思考

    (DDD)仓储的思考 为什么需要仓储呢?领域对象(一般是聚合根)的被创建出来后的到最后持久化到数据库都需要跟数据库打交道,这样我们就需要一个类似数据库访问层的东西来管理领域对象.那是不是我们就可以设计 ...

  5. SharePoint Search之(两)持续抓取Continues crawl

    于SharePoint 2010与在先前的版本号.有两种类型的抓取,Full和Incremental.故名思议.Full Crawl 抓取的时间.该Content Source里面的内容再次攀升.In ...

  6. Python 提取Twitter转发推文的元素(比方username)

    CODE: #!/usr/bin/python # -*- coding: utf-8 -*- ''' Created on 2014-7-24 @author: guaguastd @name: e ...

  7. zoom的学习

    上大学做阶段项目时遇到了一个非常奇特的现象:kindEditor上传图片功能失效,可是把jsp所引用的样式去掉就好用,这说明样式有问题,于是删一个样式測试一下,就这样罪魁祸首落在了zoom身上,这是我 ...

  8. (大数据工程师学习路径)第一步 Linux 基础入门----基本概念及操作

    本节联练习主要有: 1.环境介绍 2.常用 Shell 命令及快捷键 3.Linux 使用小技巧 一.Linux 桌面环境介绍 相对于现在的 Windows 系统,UNIX/Linux 本身是没有图形 ...

  9. 类(class)能不能自己继承自己(转)

    类(class)能不能自己继承自己不行,继承关系会出现环. 假设类A继承类A.那么要新建一个类A的对象,就必须先建立一个类A父类的对象.这是一个递归的过程,而且没有终止条件.会死循环的. 从编译的角度 ...

  10. linux_常用压缩,解压缩命令

    01-.tar格式解包:[*******]$ tar xvf FileName.tar打包:[*******]$ tar cvf FileName.tar DirName(注:tar是打包,不是压缩! ...