【MSSQL】AlwaysOn集群增加发布订阅
在现有AlwaysOn集群增加发布订阅节点
配置
前提
- 节点1、节点2在AlwaysOn集群,节点3作为集群外节点使用订阅复制集群数据同步
- 发布对象必须要有主键
步骤
- 登录节点3配置分发distributor
- 在节点3中指定节点1和节点2是发布服务器
- 登录节点2指定节点3是分发服务器
- 登录节点1指定节点3是分发服务器
- 登录节点1创建发布
- 登录节点3,在分发数据库下执行下面的语句,执行下面的语句之后,logreader就可以通过Listener连接到正在工作的Primary Server了。请注意这一步是实现Publication database高可用性的关键步骤。
EXEC sys.sp_redirect_publisher
@original_publisher = 'Denali1',
@publisher_db = 'tranPubDB',
@redirected_publisher = 'liweion'; -- 将之前创建的listener带入到这个参数
配置步骤就全部完成了,之后您可以任意添加订阅,当failover发生之后,事务复制也可以正常工作。
参考:https://www.cnblogs.com/stswordman/p/3252549.html
发布订阅的限制
主键列对于事务发布中的所有表都是必需的。 主键对于合并发布中的表并不是必需的,但如果存在主键列,则无法筛选该列。
问题
1、订阅创建时提示:本地订阅已存在,但本地订阅中不显示
参考:https://blog.csdn.net/selaginella/article/details/82563207
参考:https://learn.microsoft.com/zh-cn/sql/relational-databases/replication/delete-a-push-subscription?view=sql-server-ver16
在发布服务器上,对发布数据库执行 transact-SQL) sp_dropsubscription (。 指定 @publication 和 @subscriber。 为@article指定所有值。 (可选) 如果无法访问分发服务器,请为@ignore_distributor指定值 1 以删除订阅,而无需在分发服务器上删除相关对象。
在订阅服务器上的订阅服务器上,执行 sp_subscription_cleanup (Transact-SQL) 以删除订阅数据库中的复制元数据。
2、删除发布时出现问题提示:无法更新分发数据库订阅表。无法更改订阅状态。
-- 下面存储过程的参数是 数据库名
EXEC sp_removedbreplication 'TestSync'
参考:https://blog.csdn.net/huyu107/article/details/51098462?utm_source=blogxgwz6
3、作业任务日志中存在以下报错:由于发布服务器处于不活动状态,无法生成快照
参考:https://blog.csdn.net/seteor/article/details/7742612
【MSSQL】AlwaysOn集群增加发布订阅的更多相关文章
- 阿里云重磅发布RDS for SQL Server AlwaysOn集群版
2018年双十一刚过,阿里云数据库发布RDS for SQL Server AlwaysOn集群版,这是业界除微软云SQL Database外,首家云计算公司基于SQL Server最新AlwaysO ...
- Kafka 1.0.0集群增加节点
原有环境 主机名 IP 地址 安装路径 系统 sht-sgmhadoopdn-01 172.16.101.58 /opt/kafka_2.12-1.0.0 /opt/kafka(软连接) CentOS ...
- 数据库机器迁移对AlwaysON 集群影响测试
1主3从(共享文件见证) 模拟事故 AlwaysON集群 结论 主域控服务器重启 共享文件夹见证失败,SQL集群无影响 无影响 修改共享文件夹见证路径 第一次测试修改后:整个集群突然重启,查询 ...
- Redis集群增加节点和删除节点
本文主要是承接上一篇文章Redis集群的离线安装成功以后,我们如何进行给集群增加新的主从节点(集群扩容)以及如何从集群中删除节点(集群缩容),也就是集群的伸缩,集群伸缩的原理是控制虚拟槽和数据在节点之 ...
- Docker swarm集群增加节点和删除节点
Docker swarm集群增加节点 docker swarm初始化 docker swarm init docker swarm 增加节点 在已经初始化的机器上执行:# docker swarm j ...
- ActiveMQ 事务、集群、持久订阅者、ActiveMQ监控
JMS介绍 JMS是什么? JMS的全称Java Message Service,既Java消息服务. JMS是SUN提供的旨在统一各种MOM(Message-Oriented Middleware) ...
- SQL Server 2012 AlwaysOn集群配置指南
1. AlwaysOn介绍 AlwaysOn是SQL Server 2012提供的全新综合.灵活.高效经济的高可用性和灾难恢复解决方案.它整合了镜像和群集的功能,基于OS 故障转移群集(Windows ...
- springCloud eureka服务治理集群增加安全认证
做为SpringCloud Netflix服务套件中的一部分,springCloud eureka基于Netflix Eureka做了二次封装,默认提供WEB管理页面及服务治理. 为了确保在生产环境中 ...
- kubeadm 生成的token过期后,集群增加节点
通过kubeadm初始化后,都会提供node加入的token: You should now deploy a pod network to the cluster. Run "kubect ...
- hadoop集群增加新节点
上次hadoop集群一块数据盘报警, 提交工单后维修人员更换硬盘 服务器是dell r720的, 8盘位, 蛋疼的是这些硬盘都是做的单盘raid1,维修人员说必须关机导入硬盘才能正常使用 (服务器就这 ...
随机推荐
- Django和DRF的区别
Django和DRF的区别 一.Django REST Framwork 和 Django 1.两者的概念: Django REST Framwork: 将数据库的东西通过ORM的映射取出来,通过vi ...
- SHR之员工合同解除
员工合同解除HRContractInfoFacadeControllerBean 这块的意思的源码可以自行翻阅该源码. 调用员工的实现这个合同自动解除 String sql="select ...
- Java基础之变量与常量
变量 定义:可以变化的量. Java是一种强类型语言,每个变量都必须声明其类型. Java变量是程序种最基本的存储单元,其要素包括变量名,变量类型和作用域. //数据类型 变量名 = 值:可以使用逗号 ...
- 2022-3-24内部群每日三题-清辉PMP
1.敏捷团队成员认为每日站会并不会增加价值,是因为小组规模太大.在回顾会议上,他们提出将现有的项目团队分解成更小的小组.Scrum主管应该怎么做? A.缩小团队规模,使站会更易于管理. B.在采取行动 ...
- UnityAndroid 获取根目录文件
1. 在Unity打包时获取SD权限 2. Android根目录为 "/storage/emulated/0"; 代码: if (Directory.Exists("/s ...
- trzcopy
@echo offcd /d %~dp0setlocal enabledelayedexpansionset aa=伟大的中国!我为你自豪echo 替换前:%aa%echo 替换后:%aa:中国=中华 ...
- 记录 windows RabbitMq 安装教程
安装地址:https://www.rabbitmq.com/ RabbitMq 官网下载如下两个exe文件,otp_win64_22.0.exe 文件是rabbitmq的运行环境,必须安装!!! 傻子 ...
- secureCRT设置配色方案
https://blog.csdn.net/qq_42672770/article/details/81301494
- monogo-shell
创建集合 use person //创建数据库或进入数据库 db.createCollection(table_name) 主键 插入数据时会自动生成主键,保证每条数据唯一性 生成对象主键 > ...
- PulADC驱动设计
Ref大电容10uF,X5R或钽电容,不建议NPO 参考信号的驱动(高能输出基准源,或者运放),低阻抗,大SlowRate,小建立时间:: ADA4841-1, AD8021, ADA4899-1, ...