以下内容转载于网络,个人做了简单的修改。      
  
  数据库同步可以是同一个服务器之间不同数据库之间数据同步,也可以是局域网内不同服务器间数据库的同步。

  下面具体说一下步骤,首先我们说一下发布服务器上的准备工作和条件,先把Sql Server代理设置为自启动;对事务发布,确保数据库表要有主键;新建一个文件夹,设置为共享。

  首先我们设置一下配置分发,如果之前做过配置分发设置,就是下图的效果,可以直接创建本地发布。

        
    如果之前没做过配置分发设置,则在“复制”上右键——配置分发,如下图 

  

  接着,一直下一步即可,在快照文件夹出注意一下

   
        

  下一步,如果一开始没有设置Sql Server代理为自启动,就会提示这个

  

  下一步,这个地方填写一开始创建好的共享文件夹地址,如F:\ShareFolder

  

  下一步,默认填写

  
        

  下一步,勾选配置分发

    
        

  点完成,可以看到:

    
        

  至此配置分发已经好了,接着就是创建本地发布了,

  

  下一步选择要同步的数据库

    
        

  这个地方选择事务发布,具体的每个发布可以看说明,后面也会讲到

  

  下一步,如果你的数据库中有视图等,也会显示出来,勾选你要同步的对象

  

  下一步,添加筛选项,如果需要就添加,不需要直接下一步,添加的界面右图

   
        

  这里不做添加,下一步,勾选第一项

  

  下一步,点安全设置,如下设置:

    
        

  确定后如下:

  

  下一步,勾选创建发布,下一步,填写一个发布名称

  
        

  点完成

  
        

  至此本地发布就创建好了,这时再展开复制-本地发布可以看到刚刚创建好的本地发布test

  

  创建好了本地发布就要创建订阅了,为了方便就在本机做订阅,如果在其他服务器上做订阅流程是一样的只是在选择发布服务器时有点区别,下面会讲到

  
        

  同样下一步,如果这地方是在本机订阅,则直接选择数据库和发布test,如果是订阅其他服务器上的发布,可以展开发布服务器,选择“查找sql server 发布服务器”

  
        

  这个时候会弹出数据库登录界面,这里需要注意一下,服务器登录要用计算机名称,不能用IP地址或别名,还要注意,这个地方要链接发布服务器,因为确保发布服务器上数据库允许远程链接。链接上之后会在刚才的界面展示这个服务器上的发布,选择好发布,下一步即可,勾选第一项。

   
        

  下一步,勾选上订阅服务器,选择订阅数据库,只要选择新建数据库就可以了。这时会弹出创建数据库对话框,创建一个数据库,

  
        

  下一步,设置安全性

  
        

  确定,下一步,同步计划选连续运行,初始化时间选择立即

  
        

  下一步,选择立即创建订阅,一直下一步即可,至完成。这个时候展开复制下的本地发布和本地订阅,可以看到发布和订阅都存在了。而且刚才创建的订阅数据库TestDataDY在数据库中也存在了。

     
    
       

  所有的工作都已经做好了,下面就是测试了。因为我们是把TestData作为发布的数据库,TestDataDY是订阅的数据库,因此我们在TestData数据库的表中添加或修改数据库,看TestDataDY数据库中的数据是否也跟着响应的改变。测试的过程可以自己手动的做一下。

  接下来我们说一下其他的东西,第一个就是一开始我们创建的共享文件夹,他叫快照文件夹,顾名思义就是用来存放快照的。我们可以找到这个文件夹并打开看一下,一开始是空的文件夹,当我创建了发布和订阅以后,在此打开可以看到,有四个以发布的数据库命名的文件。这些就是数据库TestData中的表的初始架构和数据。

  

  回顾上面创建订阅的时候创建的订阅数据库,我们只是创建了数据库,而数据库中的表、字段等我们没有创建,当我们创建好订阅以后,这些表和字段都自动的创建好了,就是通过快照文件夹中的初始架构和数据来完成的。

  还有一个就是分发数据库distribution,他是可以找到的,他存在系统数据库中。

  

  可以看到这个数据就一张表和一个字段,这个数据库主要的作用是用来存储历史记录、错误和新事务。

  接着就是发布类型了,发布类型有快照发布,事务发布,具有可更新订阅的事务发布和合并发布。

  快照发布:发布服务器按照预定的时间间隔向订阅服务器发送已发布数据的快照。他的工作机制是:发布服务器,将要发布的数据库整个做一个快照;订阅服务器的快照代理程序把发布服务器的快照读取过来,放在本地的快照文件夹内;订阅服务器的发布代理程序把快照文件夹中的快照发布到订阅服务器上。历史记录和快照记录在分发服务器中。

  事物发布:在订阅服务器收到已发布数据的初始快照后,发布服务器将事务流式传输到订阅服务器。他的基本原理:初始数据和架构(通过快照复制来完成),从这里可以体现出来快照复制,是所有复制的基础 。快照复制在订阅服务器上建立了订阅数据库;发布服务器的数据修改后,写事务日志;分发服务器的日志读取代理读取发生改变的数据的事务日志,把这些事务日志保存在发布服务器的发布数据库中;分发服务器的分发代理程序 将分发数据库中的事务日志分发到各个订阅服务器上,然后把历史记录和错误记录在分发数据库中。

  具有可更新订阅的事务发布: SQL Server 订阅服务器收到已发布数据的初始快照后,发布服务器将事务流式传输到订阅服务器。来自订阅服务器的事务被应用于发布服务器。

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

  这几个发布的区别是:

  1、快照发布和事务发布是单向的,即A->B;合并发布是双向的,A->B,B->A。

  2、快照复制是复制所有的数据,而事务复制和合并复制是复制数据的更改。

  以上就是复制的整个流程了,不过这个只是简单是数据同步

SQL Server 2008数据库同步配置的更多相关文章

  1. SQL Server 2008 数据库同步的两种方式 (发布、订阅)

    参考转载: SQL Server 2008 数据库同步的两种方式 (发布.订阅) 使用Sqlserver事务发布实现数据同步

  2. 通过SQL Server 2008数据库复制实现数据库同步备份

    SQL Server 2008数据库复制是通过发布/订阅的机制进行多台服务器之间的数据同步,我们把它用于数据库的同步备份.这里的同步备份指的是备份服务器与主服务器进行 实时数据同步,正常情况下只使用主 ...

  3. SQL Server 2008 数据库镜像部署实例之三 配置见证服务器

    SQL Server 2008 数据库镜像部署实例之三 配置见证服务器 前面已经完成了镜像数据库的配置,并进行那个了故障转移测试.接下来将部署见证服务器,实现自动故障转移. 一.关于见证服务器 1.若 ...

  4. SQL Server 2008 数据库镜像部署实例之二 配置镜像,实施手动故障转移

    SQL Server 2008 数据库镜像部署实例之二 配置镜像,实施手动故障转移 上一篇文章已经为配置镜像数据库做好了准备,接下来就要进入真正的配置阶段 一.在镜像数据库服务器上设置安全性并启动数据 ...

  5. 如何转换SQL Server 2008数据库到SQL Server 2005

        背景介绍: 公司一套系统使用的是SQL SERVER 2008数据库,突然一天收到邮件,需要将这套系统部署到各个不同地方(海外)的工厂,需要在各个工厂部署该数据库,等我将准备工作做好,整理文档 ...

  6. SQL Server 2008 数据库镜像部署实例之一 数据库准备

    SQL Server 2008 数据库镜像部署实例之一 数据库准备 一.目标 利用Sql Server 2008 enterprise X64,建立异步(高性能)镜像数据库,同时建立见证服务器实现自动 ...

  7. phpstudy连接SQL Server 2008数据库 以及 php使用sql server出现乱码解决方式

    开始也尝试自己配置php安装环境,找到一个详细的百度经验http://jingyan.baidu.com/article/154b46315242b328ca8f4101.html,前面有问题也一一去 ...

  8. Eclipse连接SQL Server 2008数据库 以及问题总结

    Eclipse中使用SQL server 2008数据库 一.准备材料 要能够使用数据库就要有相应的JDBC,所以我们要去Microsoft官网下载 https://www.microsoft.com ...

  9. SQL SERVER 2008数据库各版本功能对比

    微软SQL SERVER 2008数据库有6个版本,分别是数据中心版.企业版.标准版.Web版.工作组版.简易版,有时候购买的时候或需要使用某项功能时,需要了解各个版本的区别,功能差异,很多时候,大部 ...

随机推荐

  1. C# extended toolkit propertygrid 隐藏部分属性

    该方法是通过更改ShowDetail的状态来实现的隐藏属性 首先在引用里右键 管理NuGet程序包 查找extended wpf toolkit 并安装 然后在MainWindow.xaml添加引用 ...

  2. 关于图片的PNG与JPG、JIF格式

    一:GIF(Graphics Interchange Format) 简介 GIF图形交换格式是一种位图图形文件格式,以8位色(即256种颜色)重现真彩色的图像. 它实际上是一种压缩文档,采用LZW压 ...

  3. phpstorm 设置Utf8编码

    点击file 再点击setting 找到file Encoding gbk改成utf-8就ok了

  4. IOS常见异常捕获

    前言:在开发APP时,我们通常都会需要捕获异常,防止应用程序突然的崩溃,防止给予用户不友好的体验.其实Objective-C的异常处理方法和JAVA的雷同,懂JAVA的朋友一看就懂.我为什么要写这篇博 ...

  5. 手机GPS为什么能在室内定位?

      为什么手机在室内也能定位?大部分人知道手机会通过GPS进行定位,其实手机定位系统并不是和我们的RTK完全一样的,因为那样就无法解释为何在室内也能定位了,这里我来科普一下智能手机的那些定位方法.   ...

  6. Python 性能优化——对象绑定

    不同函数调用方式对应不同的绑定次数: import profile class A: def f(self): pass def foo(): a = A() for i in range(10000 ...

  7. WCF双工通讯以及客户端间的间接通讯

    由于学习计划安排不当,对WCF的认知一直停滞不前,最近工作上又用回了WCF,重拾一下,看到蒋老师介绍双工通讯的博文,实践一下,积累一下.原想着WCF的双工通讯就是原本的客户端能调用服务端的方法之余,服 ...

  8. 【追寻javascript高手之路01】javascript参数知多少?

    前言 我最近在思考一个问题,我本身平时还是积累了不少东西,面试时候问的东西基本逃不出写的博客(当然,高级阶段的就不行了),但是真的被问到时我却不一定答得上来. 知道且能回答,回答的效果都不是很好... ...

  9. Numpy 用法小结

    1.  asarray 函数 可以将输入数据转化为矩阵格式. 输入数据可以是(列表,元组,列表的列表,元组的元组,元组的列表等这些数组形式). >>> asarray([(1,2,3 ...

  10. HDU 1535 Invitation Cards(最短路 spfa)

    题目链接: 传送门 Invitation Cards Time Limit: 5000MS     Memory Limit: 32768 K Description In the age of te ...