MSSqlServer 发布/订阅配置(主从同步)
背景:
1、单个独立数据库的吞吐量是有瓶颈的,那么如何解决这个瓶颈?
2、服务器直接数据如何复制、并具备一致性、可扩展性?
资源:
官方资源:https://technet.microsoft.com/zh-cn/library/ms151198(v=sql.100).aspx
Quick Start 实战
微软官方教程查找:官方资源——复制——开发——设计和实现教程。里面还会涉及一些必要的安全设置。本文只对核心内容实操图文,暂且跳过。
配置分发服务器(发布服务器、源)
1、打开SQL Server服务器下的 【复制】 ——右击【本地发布】节点,选择【新建发布】

2、如果第一次设置会弹出【发布向导】对话框直接点下一步——进入下图设置【分发服务器】,
第一个是源发布服务器充当分发服务器,第二个将设置单独的分发服务器,不理解的可以看后文的原理,所以选第一个【下一步】

3、【启动SQL SERVER代理】的方式:【选择第一个自动】——【下一步】。
(正式环境建议选自动,测试可以手动方式。订阅/发布的基本原理还是要通过sql代理协助完成)

对应的服务在这里设置:

4、出现【快照文件夹】对话框,(默认C盘需要做权限设置)这里我们设置到D盘随便新建一个文件夹ReplData——【下一步】。
(正式环境一般要配合Windows账户和权限设置文件夹这里暂部多述。另外需要知道的就是后文的发布类型初始化都是需要快照的)

5、点击【下一步】,选中发布的数据库,我们选择 数据库DataSample,点击【下一步】

6、选择【发布类型】,我们选择 【事务发布】——点击【下一步】。四个类型后面在详细说明适用场景。

7、选择需要发布给订阅端的对象:表、存储过程、视图等等,点击【下一步】:

8、出现【筛选表行】对话框,点击【添加】:

9、出现如下的筛选器对话框、可以设置不同的表发布需要的列。
(聪明的同学可能想到能不能以此完成对表的切割分布,留作思考)
不筛选,每个表所有字段全部同步,点击【取消】返回——【下一步】

10、,进入【快照代理】设置对话框,这里有两个选择一个是立即创建快照,一个是指定一个计划(比如可以指定xxx天xxx时间运行),我们选择第一个,点击【下一步】

11、【代理的安全性】——点击【安全性设置】

12、选择 SQL SERVER 用户,填写数据库连接账户——点击【确定】——返回后点击【下一步】:

13、勾选【创建发布】 ——继续【下一步】:

14、我们给发布进行命名为:“DataSample_Publisher” ,点击【下一步】:

15、运行创建发布,并会显示创建发布的结果(最后一个可以手动设置,方法见上文),点击【关闭】:

设置为手动的, 验证成功:右键查看快照状态,每次点击启动会创建一个快照。点击复制监视器,可以看到有没有报错

订阅服务器(分布的从服务器、目标)
1、打开SQL——【复制】——右键【本地订阅】——如果是第一次会弹出向导,直接【下一步】,如下图,选择我们刚配置的发布服务器,下一步

2、演示本机,选择第一个——下一步
推送订阅会加重主服务器的负担,请求订阅则会加重订阅服务器的负担

3、勾选发布源、后面设置 本地 订阅存储数据库B——下一步

4、点击“…”,弹出账户设置图,输入好账户——确定——下一步


5、下一步

6、下一步

7、下一步——下一步——完成

验证
打开源数据库、插入数据。然后打开订阅数据库查询,看源数据库的数据是否也同步到了订阅数据库:
INSERT INTO [dbo].[Product]
([Name]
,[Price]
,[CreateTime])
VALUES
('测试测试'
,18.02
,GETDATE())
MSSqlServer 发布/订阅配置(主从同步)的更多相关文章
- SQL Server 2008 R2的发布订阅配置实践
纸上得来终觉浅,绝知此事要躬行.搞技术尤其如此,看别人配置SQL SERVER的复制,发布-订阅.镜像.日志传送者方面的文章,感觉挺简单,好像轻轻松松的,但是当你自己去实践的时候,你会发现还真不是那么 ...
- 超详细SQL SERVER 2016跨网段和局域网发布订阅配置图解和常见问题
原文:超详细SQL SERVER 2016跨网段和局域网发布订阅配置图解和常见问题 转载标明出处:http://blog.csdn.net/u012861467 前方高能,要有点耐心,图片较多,注意在 ...
- SQLServer 2008 R2 发布订阅配置指南
原以为配置SQLServer 2008 R2的发布订阅很简单,实际配置后才发现过程中有问题地方一直都没搞明白,最后经过几天的查找问题和实践,终于搞定了.现将过程记录如下. SQLServer 2008 ...
- MYSQL配置主从同步
MYSQL配置主从同步 mysql主服务器配置 vim /etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql. ...
- Mysql配置主从同步的基本步骤
# 配置主从同步的基本步骤 #总结为如下的步骤: # .在主服务器上,必须开启二进制日志机制和配置一个独立的ID # .在每一个从服务器上,配置一个唯一的ID,创建一个用来专门复制主服务器数据的账号 ...
- mysql 在Linux 配置 主从同步
一.主服务器相关配置 1.创建同步账户并指定服务器地址 [root@localhost ~]mysql -uroot -pmysql>use mysqlmysql>grant replic ...
- percona-mysql5.7.24使用xtrabackup工具配置主从同步
主从配置详细过程: 环境准备: 配置好服务器,主从服务器都安装并启动mysql数据库 # 添加读写账号和只读账号,应用配置中,写主库用读写账号,统计从库数据yoga只读账号 grant select, ...
- python中发布订阅和主从配置
发布订阅 发布者不是计划发送消息给特定的接收者(订阅者),而是发布的消息分到不同的频道,不需要知道什么样的订阅者订阅 订阅者对一个或多个频道感兴趣,只需接收感兴趣的消息,不需要知道什么样的发布者发布的 ...
- MS SQL 2008 发布订阅配置错误总结
最近在配置SQL 2008的发布订阅功能时,遇到了几个小错误,顺便归纳总结一下(以后碰到各类关于发布订阅的错误都将收录.更新到这篇文章),方便自己在以后碰到这类问题时,能够迅速解决问题.毕 ...
随机推荐
- MySql 远程连接的条件
1.首先看服务器防火墙 引用:http://www.cnblogs.com/silent2012/archive/2015/07/28/4682770.html CentOS 7.0默认使用的是fir ...
- 熟悉ROS系统中的话题
描述:这篇教程主要讲解ROS系统中的话题及rostopic和rqt_plot等命令工具: 1. Setup安装1.1 roscore 首先确保roscore已经启动运行,打开一个新的命令终端,输入如下 ...
- python-----实现接口自动化测试(实例4)
实现接口自动化测试1.读取case---从测试用例Excel表格中读取接口请求数据2.调用接口---发送请求获取实际结果3.校验结果---实际结果与预期结果对比4.结果写入表格---将实际结果与测试状 ...
- ubuntu 安装NVIDIA驱动过程
用U盘引导安装时,提示 nouveau 0000:65:00.0: fifo: SCHED_ERROR 08 [] 解决方法: 进入grub 内核启动参数后增加 nomodeset nomodeset ...
- centos7安装zabbix3.4
一.系统环境 关闭防火墙及selinux systemctl stop firewalld.service systemctl disable firewalld.service sed -i 's/ ...
- ORACLE UNDO
UNDO 数据操纵 数据操纵语言(DML)由以下SQL语句组成: INSERT,DELETE,UPDATE,MERGE DML始终作为事务处理的一部分执行,它可以: 使用Rollback命令执行回退 ...
- springboot 整合swagger-ui
一.添加maven依赖 <dependency> <groupId>io.springfox</groupId> <artifactId>springf ...
- Django 之Redis配置
目的:访问服务器频繁的读取数据库 ,会耗损服务器性能及降低用户体验,为此引入Redis 1,安装 redis(2.10.6兼容性更好) pip install redis 2,settings.py配 ...
- 图解HTTP笔记
http 0.9 1990年 http 1.0 1996年 Tcp/Ip分层模型 应用层: 如Ftp Http DNS. 传输层: 如 TCP UDP .将报文分成报文段.“传输”指的是端对端( ...
- Magento2与Magento1的区别有哪些
magento2是15年正式上线的正式版,框架和写法跟magento1有很大区别,用到了命名空间和composer,模块化设计更强.因为是刚出生不久 所以bug比较多.目前全世界做magento2的公 ...