当数据量变得庞大的时候,读写分离还是很有必要的。
redis提供了一个master主服务,多个slave的从服务,也就是一个主机多个从机。
-
准备了三个redis,来模拟多台电脑上的服务,一个master,两个slave
-
修改 redis.windows.conf 配置文件
-
master的配置文件设置:
port 6379
requirepass 123slave1的配置文件:
port 6380
slaveof 127.0.0.1 6379 #连接master的路径和端口
masterauth 123#连接master所需的密码
requirepass 123#slave1的密码,为了方便一些后续的操作,这里密码与master中一致slave2的配置文件:
port 6381
slaveof 127.0.0.1 6379 #连接master的路径和端口
masterauth 123#连接master所需的密码
requirepass 123#slave2的密码,为了方便一些后续的操作,这里密码与master中一致 -
配置好之后先启动master主机
-
然后启动slave1从机
-
再启动slave2从机
-
启动完从机后可以从master主机查看有哪些从机连接了
-
打开连接master主机的客户端,保存一条数据
-
打开两台中任意一台slave从机,查看保存的数据
-
我们可以看到,在master主机上的数据已经被复制到了slave从机上了
需要注意
只有master主机可以进行读写操作,slave从机只能读操作
在slave中写数据会报如下错误 :
到此为止,主从复制,读写分离就搭建完成了