1.错误描述
org.springframework.data.redis.RedisSystemException: Error in execution; nested exception is io.lettuce.core.RedisCommandExecutionException: READONLY You can’t write against a read only slave.
2.错误原因
Java连接redis实现缓存的时候出现org.springframework.data.redis.RedisSystemException: Error in execution; nested exception is io.lettuce.core.RedisCommandExecutionException: READONLY You can’t write against a read only slave.错误原因为:因为我以前在学习Redis的复制(Master/Slave)采用了一主二仆的方式来进行复制,刚好在做项目的时候错误的把salve节点的redis连接在了项目中,因为连接的是从节点,从节点只有读的权限,没有写的权限,所以导致了项目出错。
在这里插入图片描述

3.解决办法
第一种:你可以修改你连接redis的配置,确保连接的redis是mater主节点就可以了。
第二种:你也可以修改你slave的edis.conf配置文件,修改配置文件的slave-read-only为no,那么从节点也就可以进行写的操作了,代码不会报错

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐