首页 > 数据库 >SQLServer通过发布订阅实现主从同步(读写分离)

SQLServer通过发布订阅实现主从同步(读写分离)

时间:2024-05-24 16:08:37浏览次数:9  
标签:订阅 同步 分发 读写 配置 SQLServer 服务器 主从

发布订阅实操:
(1). 启动SQLServer代理模式。

 

PS:从库也可以不用创建,因为在新建订阅的时候,可以选择自动创建,会自动同步数据库结构。

 

1. 配置分发服务器

(1). 如果是首次配置读写分离,需要配置分发服务器,后续不再配置。 如果不想用之前的分发服务器,可以右键复制,禁用分发服务器,然后重新配置。

注:配置过程中,快照地址要有读写权限,不要放到C盘。

2. 新建发布

下面的演示步骤,是以【快照发布】的模式进行创建的,配置成10s同步一次; 也可以选择【事务发布】,实时同步,不需要配置同步频率。

3. 新建订阅

下面的演示步骤,采用的是【推送订阅】的模式进行,配置的是已经创建好的从数据库ReadWriteSlave1(ReadWriteSlave2相同),也可以现场创建。


补充:右键启动复制监视器,查看发布订阅的同步情况

 

标签:订阅,同步,分发,读写,配置,SQLServer,服务器,主从
From: https://www.cnblogs.com/eileenfdx/p/18211160

相关文章

  • 什么是数据库读写分离
    有一些技术同学可能对于“读写分离”了解不多,认为数据库的负载问题都可以使用“读写分离”来解决。 这其实是一个非常大的误区,我们要用“读写分离”,首先应该明白“读写分离”是用来解决什么样的问题的,而不是仅仅会用这个技术。什么是读写分离?其实就是将数据库分为了主从库......
  • 文件的读写
    文件操作:1.打开文件2.读/写-----操作文件test.c------写(输出)------->文件test.c<------读(输入)--------文件文件名:文件路径+文件名主干+文件后缀文件指针:FILE*pf;//文件指针变量//打开文件FILE*fopen(constchar*filename,constchar*mode);//关闭文件intfclose......
  • 磁盘被sqlserver日志文件占满如何处理
    因为磁盘已经被占满,使用分离附加方法也失败,故只能直接从磁盘中删除ldf文件。接下来的问题是,如何在没有ldf文件的情况下恢复数据库mdf文件呢如图所示,新建数据库TestLDF,生成mdf和ldf文件 现在模拟删除ldf文件,点击继续,弹出文件正在使用,停止sqlserver服务再次删除ldf文件,删除成......
  • 在SQLServer中使用SQL语句插入数据出现乱码或问号的解决方法
    原文链接:https://www.cnblogs.com/net5x/p/12430808.html错误产生的原因:        出现使用SQL语句插入数据出现乱码或问号是由于数据库属性的排序规则设置不正确.解决方法:方法一:手动修改(设置数据库的排序规则)注意事项:要确定修改的数据库没有被使用,否则会失败!具体步骤......
  • 关于SQLServer数据库的READ_COMMITTED_SNAPSHOT隔离级别
    默认情况下,SQLServer的事务隔离级别是READCOMMITED。刚开始我理解这个模式就是读已经提交的,那也就是说并发一个事务去更新,一个事务查询同一条数据应该是像Mysql、Oracle不会加锁直接返回数据库已经提交的数据才对。但是SQLServer不是这样的。SQLServer中有READ_COMMITTED_SN......
  • [转] 整理一下SQLSERVER的排序规则
    原文链接:https://www.cnblogs.com/JimZhang/archive/2006/04/03/365573.htmlSQLSERVER的排序规则平时使用不是很多,也许不少初学者还比较陌生,但有一个错误大家应是经常碰到:SQLSERVER数据库,在跨库多表连接查询时,若两数据库默认字符集不同,系统就会返回这样的错误:“无法解决eq......
  • .NET6中使用Log4net记录日志(二)记录日志到SqlServer数据库
    1、引用NuGet包(System.Data.SqlClient) 2、创建SqlServer数据库表(ProgramLog)CREATETABLEProgramLog(IdINTIDENTITY(1,1)PRIMARYKEY,[Date]DATETIME,--记录时间[Level]NVARCHAR(128),--日志级别[RunTime]VARCHAR(128),--执行时长[Thread]NVARCHAR(256),--线程号[Lin......
  • SQLSERVER存储过程
    一、截取字符串第几个字符后的第几个元素CREATEfunctionfunc_StrSplitIndex(@strvarchar(1024),--要分割的字符串@splitvarchar(10),--分隔符号@indexint--取第几个元素)returnsvarchar(1024)asbegindeclare@locationintdeclare@startintdeclare@nex......
  • DataGridView 批量删除 SqlServer数据
    privatevoidbuttonDelete_Click(objectsender,EventArgse){DialogResult=MessageBox.Show("确定删除这些数据么?","提示",MessageBoxButtons.YesNo);List<int>list=newList<int>();if(DialogResult==DialogResult.Yes)......
  • 5.x 主从复制导致的命令执行
    Redis4.x/5.x主从复制导致的命令执行Redis是著名的开源Key-Value数据库,其具备再沙箱中执行Lua脚本的能力。Redis未授权访问在4.x/5.0.5以前版本下,我们可以使用master/slave模式加载远程模块,通过动态链接库的方式执行任意目录。环境搭建cdvulhub/redis/4-unaccdocker0compo......