redis主从复制配置和使用都非常的简单。通过主从复制可以允许多个 slave 拥有和 master 相同的数据库副本。
redis主从复制的特点:
下面是redis主从复制的一般架构设计:
master服务器的配置,需要指定哪些外部主机能够连接到master主服务器,修改master的配置文件:
bind 0.0.0.0 #允许所有外部主机访问
slave服务器的配置,只需在 slave 的配置文件中加入以下配置:
slaveof 192.168.1.1 6379 #指定要同步的master的主机和端口
masterauth xxxxxx #如果主机加了密码,则指定master服务主机的密码,注意由于redis服务器效率非常高,理论上1s之内能够尝试15万次的密码尝试,为了防止外部暴力破解,需要设置高强度的密码
我们在主数据库上设置一对键值对:
redis 127.0.0.1:6379> set name zhangsan
OK
redis 127.0.0.1:6379>
在从服务器上获取这个键:
redis 127.0.0.1:6379> get name
"zhangsan"
redis 127.0.0.1:6379>
那么如果事先我们对redis主从集群的情况不甚了解,我们是如何区分哪个是主,哪个是从的呢?
别着急,我们只需要使用 info 命令就可以得到主从的信息,比如我们在从库上执行info: