zheli一、准备工作
# 查询docker上的redis镜像
huxing@localhost data % docker search redis
# 下载redis镜像
huxing@localhost data % docker pull redis
二、搭建redis主从配置环境
1. 先创建两个redis的conf目录
huxing@localhost data % mkdir /Users/huxing/Desktop/dev/redis/redis-6379
huxing@localhost data % mkdir /Users/huxing/Desktop/dev/redis/redis-6380
2. 在这两个目录下创建conf文件
# 跳转到文件夹内
huxing@localhost data % cd /Users/huxing/Desktop/dev/redis/redis-6379
# 创建conf文件
huxing@localhost redis-6379 % touch redis.conf
配置文件中几个关键的配置参数如下:
# 指定 redis 只接收来自于该IP地址的请求,如果不进行设置,那么将处理所有请求
bind 127.0.0.1
#是否开启保护模式,默认开启。要是配置里没有指定bind和密码。开启该参数后,redis只会本地进行访问,
拒绝外部访问。要是开启了密码和bind,可以开启。否则最好关闭,设置为no
protected-mode yes
#redis监听的端口号
port 6379
#是否在后台执行,yes:后台运行;no:不是后台运行
daemonize yes
#指定了记录日志的文件。空字符串的话,日志会打印到标准输出设备。后台运行的redis标准输出是/dev/null
logfile /usr/local/redis/var/redis.log
#是否打开记录syslog功能
# syslog-enabled no
#syslog的标识符。
# syslog-ident redis
#日志的来源、设备
# syslog-facility local0
#数据库的数量,默认使用的数据库是0。可以通过”SELECT 【数据库序号】“命令选择一个数据库,序号从0开始
databases 16
#指定本地数据库文件名,一般采用默认的 dump.rdb
dbfilename dump.rdb
#数据目录,数据库的写入会在这个目录。rdb、aof文件也会写在这个目录
dir /usr/local/redis/var
# 复制选项,slave复制对应的master。
# replicaof <masterip> <masterport>
#如果master设置了requirepass,那么slave要连上master,需要有master的密码才行。masterauth就是用来配置master的密码,这样可以在连上master后进行认证。
# masterauth <master-password>
# 当master不可用,Sentinel会根据slave的优先级选举一个master。最低的优先级的slave,当选master。
而配置成0,永远不会被选举
replica-priority 100
#aof持久化策略的配置
#no表示不执行fsync,由操作系统保证数据同步到磁盘,速度最快
#always表示每次写入都执行fsync,以保证数据同步到磁盘
#everysec表示每秒执行一次fsyncÿ