sql数据库发布、订阅同步方式操作
Sql数据库发布订阅分为两个步骤:1、发布。2、订阅。首先在数据源数据库服务器上对需要同步的数据进行发布,然后在目标数据库服务器上对上述发布进行订阅。
一、发布。
发布需要用实际的服务器名称,不能使用服务器的IP地址。能发布的信息包括表,视图,用户定义函数,存储过程。
1.1、配置别名
分发服务器:
启动SQL Server配置管理器
SQL Server网络配置“TCP/IP”启用
Sql Native Client 10.0配置(32位)“别名”新建别名 如下图:
说明: 别名指发布/订阅服务器名
端口号指MSSqlserver使用的端口号
服务器指发布/订阅服务器IP
Sql Native Client 10.0配置“别名”新建别名 同上
以上配置完成后,如果还是无法远程连接到数据库,则修改系统配置文件
C:\WINDOWS\system32\drivers\etc\hosts 加入
10.240.15.10 实例名
发布服务器、订阅服务器别名配置参考分发服务器配置
说明:只支持服务器名+实例名+端口号方式访问。
别名服务可只进行开启,不进行设置。
1.3启动主数据库服务器上的SQL2008数据库服务如下图
连接到SQl2008服务器
具体发布过程如下:
找到数据库服务器下的【复制】--【本地发布】,右键【新建发布】如下图:
点击下一步:
选择待发布的数据库
选择发布类型:
快照发布:发布服务器按预定的时间间隔向订阅服务器发送已发布数据的快照。(全量)。
事务发布:在订阅服务器收到已发布数据的初始快照后,发布服务器将事务流式传输到订阅服务器。(变化的量)。
具有可更新订阅的事务发布: 在 SQL Server 订阅服务器收到已发布数据的初始快照后,发布服务器将事务流式传输到订阅服务器。来自订阅服务器的事务被应用于发布服务器。(比较复杂,在新版本的数据库中已经没有此功能)。
合并发布:在订阅服务器收到已发布数据的初始快照后,发布服务器和订阅服务器可以独立更新已发布数据。更改会定期合并。Microsoft SQL Server Compact Edition 只能订阅合并发布。(双向复制,比较复杂)。
选择事务同步点击下一步:
选择待发布的内容:
带红色标记的表不能发布,因为它没有主键列。事务发布中的所有表都需要主键列。
注:点击项目属性,选择“所有表项目的属性”可以按需要设置发布的属性!
点击下一步:
可以添加筛选器
点击下一步:
勾选多选框:
点击更改,设置同步时间频率:
代理安全性设置:
选择在SQL Server代理服务账户下运行和使用以下SQL Server登录名,填写用户名密码
点击完成,输入发布名称:
发布成功:
注:发布完成后可先查看快照代理状态,确保发布快照执行完毕后,在进行订阅。
二、订阅。
订阅是对数据库发布的快照进行同步,将发布的数据源数据同步到目标数据库。具体订阅过程如下:
选择订阅的发布:
选择发布服务器—查找SQL Server发布服务器,输入用户名密码选择要发布的数据库,注必须输入服务器名称,不能为服务器ip。
点击下一步:
选择或新建订阅数据库
新建数据库,输入数据库名称:
点击下一步,点击红线按钮设置分发代理
选择在SQL Server代理服务账户下运行和使用以下SQL Server登录名,然后输入用户名密码
点击完成:
注1:修改数据库实例名
(如果没有修改计算机名,跳过该步)
由于修改了分发服务器名,所以需要修改实例名,使服务器名与实例名保持一致
查询实例名 select @@servername
删除旧的实力名 EXEC sp_dropserver'本地实例名称'
添加修的实例名 exec sp_addserver'修改名称','原名称'
重启服务查询
SELECT @@SERVERNAME,SERVERPROPERTY('SERVERNAME')
两列数据一致,则实力名修改成功。
修改后服务器名称与实例名一周后,重启下sql server代理
注2:执行中注意问题
1.由于数据库较大,经过测试快照需要一到两个小时才能完成,在执行快照时比较消耗资源请耐心等待。
2快照执行时间,请按需求设定
3请关闭防火墙
4订阅服务器一定要添加发布服务器别名
5、设置表主键问题:设置时检查表中是否有自增长的数据列,如有直接将自增长的数据列设置为主键。
sql数据库发布、订阅同步方式操作的更多相关文章
- SqL数据库发布订阅非聚集索引没有被复制到订阅服务器的解决方案
Non-Clustered Indexes not copying in Transactional Replication : SQL Server 2008 方法1: You have trans ...
- 超详细!! sql server 同步数据库 发布 订阅 跨网段 无公网ip 常见问题
问题描述 主机1:发布端 阿里云服务器--有公网ip 主机2:订阅端 笔记本--无公网ip 数据量很小,主要是熟悉发布订阅的操作流程. 主机2仅仅作为主机1的本地备份,要求修改云服务器上数据后,能通过 ...
- SQL Server发布订阅功能研究
前提: 发布订阅只能是同一个内网的机器上才能使用,其实这个可以用配置管理器的别名功能设置之后就可以了,外网的也能通过这样的方式来搞. 配置过程参考老D的文章:http://www.cnblogs.co ...
- SQL Server 发布订阅 发布类型详解
MicrosoftSQL Server 提供了三种复制类型. 每种复制类型都适合于不同应用程序的要求. 根据应用程序需要,可以在拓扑中使用一种或多种复制类型: 快照复制 事务复制 合并复制 为了帮助您 ...
- MS SQL 2008 发布订阅配置错误总结
最近在配置SQL 2008的发布订阅功能时,遇到了几个小错误,顺便归纳总结一下(以后碰到各类关于发布订阅的错误都将收录.更新到这篇文章),方便自己在以后碰到这类问题时,能够迅速解决问题.毕 ...
- SQL-Server2008 数据库发布订阅
参考博客园文章http://www.cnblogs.com/tyb1222/archive/2011/05/31/2064944.html 添加安全数据库 更改数据库名称 SQL语句 select @ ...
- sql数据库的表连接方式图文详解
sql数据库表连接,主要分为:内连接.外连接(左连接.右连接 .全连接).交叉连接,今天统一整合一下,看看他们的区别. 首先建表填充值. 学生表:student(id,姓名,年龄,性别 ) 成绩表 ...
- sql server 发布订阅
[配置] 一. 发布方 复制 >> 如果有问题 C:\Windows\System32\drivers\etc hosts: 127.0.0.1 ?? 二. 订阅方 订阅方设置结束 三. ...
- [sql server发布订阅]after触发器执行失败造成复制不成功
结论: (以插入而例) 发布端的数据插入成功 订阅段的数据不会插入 实验 创建一张新表 create table test_subscriber (id int, mark varchar(2),in ...
随机推荐
- windows下python使用虚拟环境
官方文档: http://pythonguidecn.readthedocs.io/zh/latest/dev/virtualenvs.html virtualenv 是一个创建隔绝的Python环境 ...
- Django学习(1)——python manage.py startapp app-name新建app报错问题
作为一个刚接触python的小白,开始学习Django注定前路漫漫,记录一下学习过程中的问题和解决方案. 感谢“自强学堂”的无私奉献,根据教程安装了Django 1.9.12后,尝试新建项目,此时使用 ...
- nodejs 上传图片(服务端输出全部代码)
下面代码,全部都是nodejs端的,不用客户端代码.也就是,选择图片的form表单以及上传完毕预览图片的html,都是由node服务端输出的. 1 启动代码:(node upload.js) var ...
- [转]CSS3 Filter的十种特效
最近到处看到有人在说CSS3的filter一直没有时间自己去测试这效果.今天终于抽出时间学习这个CSS3的Filter.不整不知道呀,一整才让我感到吃惊,太强大了.大家先来看个效果吧: 我想光看上面的 ...
- bzoj 1070 修车 —— 费用流
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1070 需要考虑前面修的车对后面等待的车造成的时间增加: 其实可以从每个人修车的顺序考虑,如果 ...
- vi查找替换命令详解
一.查找 查找命令 /pattern<Enter> :向下查找pattern匹配字符串 ?pattern<Enter>:向上查找pattern匹配字符串 使用了查找命令之后,使 ...
- MongoDB3.2.8创建初始用户
启动MongoDB前需要关闭配置文件中的auth选项,否则不能创建用户 首先创建用户管理用户 use admin db.createUser({user:'admin',pwd:'123456', r ...
- C# 利用Xsd验证xml
最近做项目时,用到了xml的序列化与反序列化, 发现最好用xsd来验证xml, 因为反序列化xml不校验xsd. 方法:xmlData变量为xml字符串 MemoryStream ms = new M ...
- POJ1365:质因数分解
Prime Land Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 3590 Accepted: 1623 Descri ...
- CSS3 日常小结
1. pointer-events:none; 2. flex 今天看到一个牛X的CSS3属性 flex, 称为弹性盒子. 这中属性完全可以替代媒体查询啦 使用方法: 父元素使用属性display ...