Redis学习笔记(十二) 复制(上)

By | 2020年5月23日

偷个懒,晚上工作忙的太晚,整个复制功能的内容还没有写完,这里先说一下复制功能的简单应用。

在Redis中,用户可以通过执行SLAVEOF命令或者设置slaveof选项,让一个服务器去复制另一个服务器,我们称呼被复制的服务器为主服务器(master),而对主服务器进行复制的服务器则被称为从服务器(slave)。

进行复制中的主从服务器双方的数据库将保存相同的数据,概念上我们将这种现象称为数据库状态一致或简称一致。

现在我们简单模拟主从同步:

1、拷贝一份redisServer的代码出来,修改redis.windows.conf文件的post端口

 

这里我们修改端口号为6380。

 

这里说明下,redis启动有两种方式:一种是以windows服务的方式运行,另一种是不以服务的方式运行(CMD启动),我们这里用一下不常用的服务的方式启动。

另外在windows安装完redis后发现在安装目录下存在两个配置文件,分别是

redis.windows-service.conf 和 redis.windows.conf ,前者是用于windows服务运行,后者不以windows服务运行。

 

然后执行以下命令:

redis-server.exe --service-install redis.windows.conf --service-name redis6380 --loglevel verbose 安装服务

redis-server.exe --service-start --service-name redis6380 启动服务

redis-server.exe --service-stop --service-name redis6380 停止服务

redis-server.exe --service-uninstall --service-name redis6380 卸载服务

此时端口号为6380的redisServer已经启动,

 

2、然后另一份代码我们默认执行redis-server.exe(偷懒)启动端口号为6379的server端。

3、接下来我们在6380端口的服务器上执行slaveof 127.0.0.1 6379,此时127.0.0.1 6380成为127.0.0.1 6379的从服务器。(PS:redis命令不区分大小写~)

 

4、下面我们来校验主从是否同步:

(1)我们在主服务器(127.0.0.1 6379)服务器上执行:set key value

 

 (2)现在我们将控台切换回(127.0.0.1 6380)

 

 

 

到此一个简单的主从复制服务器就通了。

 

下一篇我们再看下主从复制的执行过程、SLAVEOF命令的实现、新旧同步方式的差异以及redis主从同步过程中的心跳检测。

 


 

每天学一点,总会有收获。

 


 

 

请关注公众号获取更多资料

发表评论