在一切正常的情况下,部分功能无法使用,并且在日志中发现异常信息:
Caused by: redis.clients.jedis.exceptions.JedisDataException: OOM command not allowed when used memory > 'maxmemory'
,那么一定是redis的内存溢出,就是说存储的东西太多了,导致redis无法正常使用
- 并且会因为一个库的满了无法使用,导致其他库也无法正常使用
解决方法:
1. 设置redis的最大占用内存
如果是阿里云等直接使用的Redis服务,并不是自己搭建的Redis,需要到阿里云的Redis服务管理中增加内存
- 通过增大redis的内存来保证redis的可使用
(1) 进入redis-cli
redis-cli -h ip -p port
例如:
redis-cli -h 127.0.0.1 -p 6379
(2) 链接上之后,如果有设置密码,需要输入密码
auth password
例如:
auth 123456
(3) 获取Redis能使用的最大内存大小,和服务器的内存有关
config get maxmemory
(4) 设置redis的最大使用内存
config set maxmemory 100mb
ps: 如果需要更大就设置最大,根据服务器内存来定<