【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,维修人员说必须关机导入硬盘才能正常使用 (服务器就这 ...
随机推荐
- Qt中的线程编程
在基于操作系统的程序设计中,在处理多任务时,可以有多种方法,但效率较高的当属线程方式,下面就来讨论一下在Qt中如何实现线程编程. 先来说一下什么是线程.线程(thread)是操作系统能够进行运算调度的 ...
- xshell he xftp下载网址
https://www.xshell.com/zh/free-for-home-school/
- 【C学习笔记】day1-3 判断1000年---2000年之间的闰年
#include<stdio.h> int main() { for (int y = 1000; y <= 2000; y++) if (y % 100 == 0) { if (y ...
- PaddleOcr-noavx离线部署文档
PaddleOcr-noavx离线部署文档 环境与版本说明: 系统 架构 Anaconda3 PaddlePaddle PaccleOCR 银河麒麟Server V10 X86 Anaconda3-2 ...
- go 镜像输出一个树 mac模式
递归写的很low,mac模式 package main import "fmt" type TreeNode struct { Value int Left *TreeNode r ...
- Carthage 使用介绍
1.安装 Carthage 安装 brew install carthage 检测当前版本 carthage version 升级至最新版本 brew upgrade carthage 2.如果更新出 ...
- macOS 10.14安装win10教程 bootcamp篇
由于工作以及系统使用习惯上的原因,拥有Mac电脑的用户常常需要用到windows系统,这个时候我们就需要在Mac上安装双系统来满足这一需求,一起来看看macOS 10.14安装win10教程吧. ma ...
- mongodb更改账户密码
docker部署方式更改 sudo docker exec -it mongodb mongo admin (登录数据库容器) use admin db.auth('admin','shijiehep ...
- Java执行cmd命令工具类
工具类: public class CmdTask implements Runnable { private String command; private String dirPath; publ ...
- NX 二次开发,线性移动uf5943
#include <uf.h> #include <uf_modl.h> #include <uf_part.h> #include <uf_modl_pri ...