SQL SERVER 2005 同步复制

what

SQL SERVER2005复制是在不同数据库间保持数据结构和数据内容同步更新的一种方案。

由三部分构成:

发布服务器:包含了需要被发布的数据库,也就是需要向其它数据源分发内容的源数据库。

分发服务器:分发服务器包含了分发数据库,分发数据库的作用是存储转发发布服务器发过来的数据。一个分发服务器支持多个发布服务器

订阅服务器:包含了发布服务器所发布的数据的副本。这个副本可以是一个数据库,或者一个表,甚至是一个表的子集。

包括三种模式:

1、快照复制:通过快照把发布数据库的结构和内容一次性同步到订阅数据库上

特点:每次更新数据大。适用于数据量不大,数据更新多,网络环境比较好的场景

2、合并复制:发布服务器和订阅数据库都修改后经过合并同步到发布数据库,发布数据库再同步到订阅数据库上

特点:适用于多个服务器都要更新数据的场景

3、事务复制:发布数据库只同步修改的地方到订阅数据库,主要根据修改日志来同步

特点:每次只同步有更改的部分,占用宽带小,实时性强。适用于实时性高的场景

订阅包括两种模式:

推订阅:发布服务器有更新的数据立即推送到订阅服务器

拉订阅:订阅服务器每隔一段时间去发布服务器查找是否有要更新的数据。

why

当我们采用读写分离,数据集群,故障转移时需要同步数据库,数据库复制就是实现该功能的手段之一。

how

创建发布

一、 准备3台SERVER,1台为发布服务器,1台为分发服务器,1台为订阅服务器,通常发布服务器和分发服务器为同1台SERVER。

二、确保3台SERVER能相互访问,SQL SERVER 远程连接需要开启,防火墙要开放1433端口。

三、根据网上发布教程进行操作,以下为教程网址:

http://www.cnblogs.com/CareySon/archive/2012/06/20/IntroductToSQLServerReplicationPart1.html

http://dufei.blog.51cto.com/382644/84645/

删除发布

使用下面系统存储过程即可:
sp_removedbreplication   @dbname = ‘dbname‘  ,  @type =  ‘type’
参数
[ @dbname=] ‘dbname‘
数据库的名称。dbname 的数据类型为 sysname,默认值为 NULL。此参数值为 NULL 时,将使用当前数据库。
[ @type = ] type 
要为其删除数据库对象的复制的类型。type 的数据类型为 nvarchar(5),可以是下列值之一。
tran:删除事务复制发布对象。
merge:删除合并复制发布对象。
both(默认值):删除所有复制发布对象。

时间: 2024-10-17 06:19:40

SQL SERVER 2005 同步复制的相关文章

SQL SERVER 2005 同步复制技术(转)

SQL SERVER 2005 同步复制技术 以下实现复制步骤(以快照复制为例) 运行平台SQL SERVER 2005 一.准备工作: 1.建立一个 WINDOWS 用户,设置为管理员权限,并设置密码,作为发布快照文件的有效访问用户. 2.在SQL SERVER下实现发布服务器和订阅服务器的通信正常(即可以互访).打开1433端口,在防火墙中设特例 3.在发布服务器上建立一个共享目录,作为发布快照文件的存放目录.例如:在D盘根目录下建文件夹名为SqlCopy 4.设置SQL 代理(发布服务器和

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

SQL Server 2008数据库复制是通过发布/订阅的机制进行多台服务器之间的数据同步,我们把它用于数据库的同步备份.这里的同步备份指的是备份服务器与主服务器进行 实时数据同步,正常情况下只使用主数据库服务器,备份服务器只在主服务器出现故障时投入使用.它是一种优于文件备份的数据库备份解决方案. 在选择数据库同步备份解决方案时,我们评估了两种方式:SQL Server 2008的数据库镜像和SQL Server 2008数据库复制.数据库镜像的优点是系统能自动发现主服务器故障,并且自动切换至镜

使用C#实现sql server 2005 和Oracle 数据同步

1.背景: 公司的一个项目进行服务扩展,添加了短信服务平台,实现平台按照预定义的规则给用户主动发送短信和用户点播,两种方式.短信平台需能够接入三网(移动.联通.电信).目前只接入了移动MAS机.用户点播时发送的短信通过MAS机,发送的内容最后保存在sql serer 2005 数据库的表T 中,然后需要根据用户发送的点播代码给用户返回对应的信息. 用户的信息都在业务系统中,业务系统是Oracle 的数据库.两者都处于同一个局域网之内.由于短信平台是一个产品我们无法进行操作,和项目经理商议后决定将

SQL Server 复制 - 发布订阅(SQL Server 数据同步)

原文:SQL Server 复制 - 发布订阅(SQL Server 数据同步) SQL Server的同步是通过SQL Server自带的复制工具来实现的,分发布和订阅2大步. A,复制-发布 发布之前,需要设置好几个前置条件,发布属性和快照位置.发布主要是设置发布数据库,如未设置,所有的发布,订阅可正常进行,也可通过快照同步,但是却无法在后面的修改中实时同步. 其次,设置快照位置.快照位置设置是在“分发服务器属性”中的发布服务器设置.如果设置的位置不能被订阅机访问,订阅是最好采用发布机推送订

SQL Server 2005 镜像构建手册

转载:http://www.cnblogs.com/killkill/archive/2008/05/23/1205792.html 一. 镜像简介 1. 简介 数据库镜像是将数据库事务处理从一个SQL Server数据库移动到不同SQL Server环境中的另一个SQL Server数据库中.镜像不能直接访问;它只用在错误恢复的情况下才可以被访问. 要进行数据库镜像所需的最小需求包括了两个不同的SQL Server运行环境.主服务器被称为"主机",第二个服务器被称作"备机&

【缓存】Sql Server 2005/2008 SqlCacheDependency查询通知的使用总结

Sql server 7.0/2000下 SqlCacheDependency使用轮询的方式进行缓存失效检查, 虽然ms说对服务器压力不大, 但还是有一些的, 而且对于不常改动的混存内容无休止的轮询感觉有点浪费, 不很经济. Sql server 2005/2008下增加使用查询通知方式进行缓存失效检查, 它通过Sql Server内部的消息队列进行异步通知, 这样就大大减轻了服务器的压力, 实现的很经济, 下面就是具体的步骤: 1.检测是否已经启用Service Broker Select D

记一次SQL server 2005 到SQL server 2008 数据库迁移

最近周末完成了一个从SQL server 2005升级到SQL server 2008的升级迁移,其实质是一个服务器迁移的过程.比较复杂的是这个服务器上的复制关系,自身既作为发布服务器,又作为订阅服务器,因此整个迁移同时需保证这些复制关系依旧可用.这个主服务器是供ERP使用,涉及到的模块也比较相对多,因此从迁移到验证整个过程还是比较长.记下本文以示庆贺. 一.主要的步骤    1.检查现有数据库的备份完整性(含发布及订阅数据库)及存在的复制关系       2.停止原服务器所有服务(含agent

JDBC连接SQL Server 2005步骤详解

一.设置SQL Server服务器:    1."开始" → "程序" → "Microsoft SQL Server 2005" → "配置工具" → "SQL Server Configuration Manager"(确认"SQL Server Management Studio"已关闭)    2."SQL Server 2005 服务"中停止服务"

PHP 5.4 成功连接 SQL Server 2005

PHP 5.4 成功连接 SQL Server 2005 :SQLSRV30.EXE:php_sqlsrv_54_ts.dll 1.下载微软提供的dll 地址:http://www.microsoft.com/en-us/download/details.aspx?id=20098 我下的SQLSRV30.EXE,这个exe是一个自解压文件,下载后双击选路径解压会得到一堆dll和说明文件. 2.将对应自己php版本的dll文件copy到php ext目录下 ts是指线程安全(ThreadSafe