Windows上搭建Redis主从服务器数据同步

自己搭建成功后,防止以后忘记在此记录一下。

Windows10 64位操作系统

Redis 版本 Redis-x64-3.2.100(具体版本下载可以百度redis官网下载)

下载Redis后解压到对应的目录下

 进入Redis目录看下具体的目录结构

redis.windows.conf  Windows系统中指定Redis加载的配置文件

redis-server.exe redis服务端启动

redis-cli.exe redis客户端启动,连接redis服务器

查看redis.windows.conf 配置文件,该文件是redis的默认配置文件,我们不直接修改该文件,而是引入自己的配置文件

引入自己配置文件的路径即可

#引入配置文件,属性的先后顺序会覆盖属性的值,一般在默认的redis.windows.conf 最后加上,这样就能保证设置的属性不会被覆盖

include D:\workhard\WorkSoftware\Redis-x64-3.2.100\path\local.conf

Redis(master)主节点属性文件配置        local.conf属性配置如下:

#设置redis监听端口
port 8080
#redis 登录密码
requirepass 123456

#redis 日志级别
#debug 很多信息,方便开发,测试。
#verbose 许多有用的信息,但是没有debug级别信息多
#notice 适当的日志级别,适合生产环境
#warn 只有非常重要的信息
loglevel debug
#redis输出日志信息到文件,需要手动创建文件夹和文件,否则,启动的时候会报错,没有权限。
#logfile D:\workhard\WorkSoftware\Redis-x64-3.2.100\redislog\redis.log
#Linux系统上,如果需要按天统计redis.log (如:20190905redis.log,20190906redis.log......) 使用 logrotate分割日志

#数据存放的文件名称
dbfilename redis.rdb
#数据存放目录,必须是一个目录(redis会自动创建redis.rdb文件),aof文件也会保存到该目录下
dir D:\workhard\WorkSoftware\Redis-x64-3.2.100\redisDb
#保存数据到磁盘,格式是 save <seconds> <changes>
#含义是在seconds 秒之后至少有changes个keys发生改变则保存一次
#可以用来检验 dbfilename 和dir 设置后是否生效
save 5 1

属性配置好后,根据属性路径手动建好文件和文件夹,建好后的目录结构如下图。

创建文件夹目录Rediscluster用于存放作为从节点的Redis,把之前解压的Redis文件夹全部复制过来,这里我复制了两份Redis

作为从节点命名为:Redis1,Redis2

由于是复制主(master)节点过来的所以需要修改配置文件:redis.windows.conf 中引入文件的路径变为了:

#引入配置文件,属性的先后顺序会覆盖属性的值,一般在默认的redis.windows.conf 最后加上,这样就能保证设置的属性不会被覆盖
include D:\workhard\WorkSoftware\Rediscluster\Redis1\path\local.conf

Redis1中local.conf的配置如下:

port 8081
requirepass 123456
loglevel debug
#logfile D:\workhard\WorkSoftware\Rediscluster\Redis1\redislog\redis.log
dbfilename redis.rdb
dir D:\workhard\WorkSoftware\Rediscluster\Redis1\redisDb
save 5 1
#设置本机为slave服务。格式为 slaveof <masterip> <masterport>,设置master服务的ip地址和端口,
#在redis启动的时候,它会自动从master进行数据同步
slaveof 127.0.0.1 8080
#当master服务设置了密码保护时,slaveof服务连接master的密码
masterauth 123456

和修改Redis1一样的方式修改好Redis2中的配置文件,

Redis2中的local.conf 配置如下:

port 8082
requirepass 123456
loglevel debug
#logfile D:\workhard\WorkSoftware\Rediscluster\Redis2\redislog\redis.log
dbfilename redis.rdb
dir D:\workhard\WorkSoftware\Rediscluster\Redis2\redisDb
save 5 1
#设置本机为slave服务。格式为 slaveof <masterip> <masterport>,设置master服务的ip地址和端口,
#在redis启动的时候,它会自动从master进行数据同步
slaveof 127.0.0.1 8080
#当master服务设置了密码保护时,slaveof服务连接master的密码
masterauth 123456


以上配置好,则可以开始启动Redis测试了,由于本地测试所以我把3个local.conf中的logfile注释掉了,这样日志就会输出到

命令行控制台了,看起来就更直观。

命令行进入Redis主节点目录,启动主Redis服务 截图如下:

主节点服务端启动成功后,使用命令连接主服务器设置key -value

这是我已经设置好的key-value值如下:

 

接下来使用命令行进入Redis1从节点目录,启动Redis1从节点服务 截图如下:

这块日志代表Redis主节点<->从节点同步成功

[10868] 07 Sep 15:59:59.275 * Connecting to MASTER 127.0.0.1:8080
[10868] 07 Sep 15:59:59.275 * MASTER <-> SLAVE sync started
[10868] 07 Sep 15:59:59.275 * Non blocking connect for SYNC fired the event.
[10868] 07 Sep 15:59:59.275 * Master replied to PING, replication can continue...
[10868] 07 Sep 15:59:59.291 * Partial resynchronization not possible (no cached master)
[10868] 07 Sep 15:59:59.291 * Full resync from master: ae0a1a47ce883a050a61bb5c53a1dd6834f2daa3:1
[10868] 07 Sep 15:59:59.391 * MASTER <-> SLAVE sync: receiving 178 bytes from master
[10868] 07 Sep 15:59:59.391 * MASTER <-> SLAVE sync: Flushing old data
[10868] 07 Sep 15:59:59.391 * MASTER <-> SLAVE sync: Loading DB in memory
[10868] 07 Sep 15:59:59.391 . Unrecognized RDB AUX field: 'redis-ver'
[10868] 07 Sep 15:59:59.391 . Unrecognized RDB AUX field: 'redis-bits'
[10868] 07 Sep 15:59:59.391 . Unrecognized RDB AUX field: 'ctime'
[10868] 07 Sep 15:59:59.391 . Unrecognized RDB AUX field: 'used-mem'
[10868] 07 Sep 15:59:59.391 * MASTER <-> SLAVE sync: Finished with success

数据同步成功后我们必须得确认一下是不是真的,使用命令行登录Redis1的客户端查看数据是否真的已经同步过来了

可以看到主(master)节点上的key-value数据都成功同步过来了。

Redis1从主节点同步过来的数据保存在local.conf配置中的dir属性设置的目录中 文件名为属性dbfilename的值。

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值