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