1. 安装redis服务端
sudo apt-get install redis-server
2.查看进程
sudo apt-get install redis-server
3.查看服务器状态
netstat -nlt|grep 6379
4.通过命令本机进入redis控制台
redis-cli
5.让redis可以通过远程被访问
vi /etc/redis/redis.conf
重启
sudo /etc/init.d/redis-server restart
检测连接是否成功
附
1.如何使用账号访问redis
查找文件路径方法
find / -name redis.conf
find / -name sentinel.conf
修改配置文件
vi /etc/redis/redis.conf
取消注释requirepass启用密码
卸载redis-server
apt-get purge --auto-remove redis-server
附:
一主一从+哨兵
哨兵机器:
192.168.88.41
192.168.88.42
192.168.88.43
安装哨兵:
sudo apt-get install redis-sentinel
一主一从:
192.168.88.51
192.168.88.52
sudo apt-get install redis-server
# 允许开机启动
systemctl enable redis
systemctl enable redis-sentinel
【主配置192.168.88.51】
vi /etc/redis/redis.conf
#主 #支持内网/本地访问,比如 bind 172.31.175.142 127.0.0.1 bind 192.168.88.51 127.0.0.1
【slave的配置192.168.88.52】
vi /etc/redis/redis.conf
#支持内网/本地访问,比如 bind 172.31.175.142 127.0.0.1
bind 192.168.88.52 127.0.0.1
#指定master slaveof 192.168.88.51 6379 #设置从库只读 slave-read-only yes
【3台机器的sentinel的配置192.168.88.41/192.168.88.42/192.168.88.43】
解释:
sentinel monitor <master-name> <ip> <redis-port> <quorum> 告诉sentinel去监听地址为ip:port的一个master,这里的master-name可以自定义,quorum是一个数字,指明当有多少个sentinel认为一个master失效时,master才算真正失效 sentinel auth-pass <master-name> <password> 设置连接master和slave时的密码,注意的是sentinel不能分别为master和slave设置不同的密码,因此master和slave的密码应该设置相同。 sentinel down-after-milliseconds <master-name> <milliseconds> 这个配置项指定了需要多少失效时间,一个master才会被这个sentinel主观地认为是不可用的。 单位是毫秒,默认为30秒 sentinel parallel-syncs <master-name> <numslaves> 这个配置项指定了在发生failover主备切换时最多可以有多少个slave同时对新的master进行 同步,这个数字越小,完成failover所需的时间就越长,但是如果这个数字越大,就意味着越 多的slave因为replication而不可用。可以通过将这个值设为 1 来保证每次只有一个slave 处于不能处理命令请求的状态。 sentinel failover-timeout <master-name> <milliseconds> failover-timeout 可以用在以下这些方面: 1. 同一个sentinel对同一个master两次failover之间的间隔时间。 2. 当一个slave从一个错误的master那里同步数据开始计算时间。直到slave被纠正为向正确的master那里同步数据时。 3.当想要取消一个正在进行的failover所需要的时间。 4.当进行failover时,配置所有slaves指向新的master所需的最大时间。不过,即使过了这个超时,slaves依然会被正确配置为指向master,但是就不按parallel-syncs所配置的规则来了。
vi /etc/redis/sentinel.conf
daemonize yes
pidfile /var/run/redis/redis-sentinel.pid
logfile /var/log/redis/redis-sentinel.log
bind 192.168.88.41(IP换成当前机器的) 127.0.0.1
port 26379
dir /var/lib/redis
sentinel monitor mymaster 192.168.88.51((IP换成主机器的)) 6379 2
sentinel down-after-milliseconds mymaster 5000
sentinel parallel-syncs mymaster 2
sentinel failover-timeout mymaster 15000
启动
# 启动需要按照Master->Slave->Sentinel的顺序进行启动
# 启动redis
systemctl restart redis
# 启动redis哨兵
systemctl restart redis-sentinel
查看端口运行状态
netstat -anptu | grep redis
查看端口运行状态
检查服务状态:
service redis-sentinel status
验证主从模式
主机器 主服务上登录客户端,添加数据并取得数据:
从机器 从服务器登录客户端,查询验证数据(从服务上不能添加数据):
如上表示主从复制验证成功
验证哨兵模式
cd /etc/redis
redis-cli -h 192.168.88.41 -p 26379
sentinel master mymaster
sentinel slaves mymaster
基本指令
# 启动 systemctl start redis systemctl start redis-sentinel # 重启 systemctl restart redis systemctl restart redis-sentinel # 停止 systemctl stop redis systemctl stop redis-sentinel # 开机启动 systemctl enable redis systemctl enable redis-sentinel # 关闭开机启动 systemctl disable redis systemctl disable redis-sentinel # 卸载,停止redis服务,sentinel服务之后,关闭开机启动,进行卸载 yum remove redis -y
#查看版本 进入/etc/reids目录以后执行命令
redis-server --version
代码参考网址:
https://blog.csdn.net/qq_39669058/article/details/89158145
参考代码配置文件写的有问题,参照如下,是个坑
spring.redis.sentinel.master=mymaster spring.redis.sentinel.nodes=192.168.88.41:26379,192.168.88.42:26379,192.168.88.43:26379 spring.redis.timeout=6000 spring.redis.jedis.pool.max-active=8 spring.redis.jedis.pool.max-wait=-1 spring.redis.jedis.pool.max-idle=8