数据库的操作一般遵循二八原则,新增、修改、删除操作占20%,查询操作占80%。如果数据量小的项目一个数据库完成增删改查的操作没有问题,如果数据量非常大,就需要多个数据库来协助完成增删改查。
一般有一个主库和多个从库,主库负责数据的增删改操作,从库负责数据的查询操作,这种操作称为数据库读写分离。
主库对数据操作完成后自动同步数据到各个从库,保证主从库的数据同步。
数据读写分离示意图:
Master代表主库,Slave代表从库。
以SqlServer为例,演示下数据库完成主从复制的步骤:
1.新建文件夹repldate,并设置为共享
2.配置分发
这里需要注意,如果安装的SqlServer版本是express版本,可能没有‘配置分发’的选项,在安装SqlServer时选择非express版本就可以了。
查看已安装的SqlServer版本,可以在查询窗口输入select @@version即可查看当前版本
在SSMS中选择复制,右键,选择配置分发
3.本地发布
本地发布文件夹下面会显示新增发布的实例:
操作完成后,第一步新建的文件夹里面会生成快照
如果没有生成快照,就表示以上操作可能有问题。
4.本地订阅
新建从库,用于同步主库的数据。
这时候就会创建一个新的数据。
操作完成,本地订阅文件夹下面会生成一个实例
打开新建的数据库,可以看到表结构和数据都会同步过来(因为我这里主库没有数据,所以看不到数据)。

为了看到主从数据库,读写分离的效果,我以同样的步骤,又通过本地订阅的方式创建了两个从库。整体数据库目录如下图所示:
下面进行一个测试,看看效果
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构