Redis默认无限使用服务器内存, 为防止极端情况下导致系统内存耗尽, 建议所有的Redis进程都要配置maxmemory。

在保证物理内存可用的情况下, 系统中所有Redis实例可以调整maxmemory参数来达到自由伸缩内存的目的。

注意,在64bit系统下,maxmemory设置为0表示不限制Redis内存使用;在32bit系统下,maxmemory不能超过3GB。

redis修改内存 redis调整内存大小_redis修改内存

redis修改内存 redis调整内存大小_内存空间_02

redis修改内存 redis调整内存大小_内存空间_03

OOM command not allowed when used memory > ‘maxmemory’

从异常字面理解,当前已用内存空间大于预设最大内存空间

解决方案:

1. 修改 Redis 最大内存配置,加大内存空间

2. 修改 Redis 存储策略:LRU 最近最少使用策略,当内存空间不足时,新增的内存将原有不经常使用的KEY值替换掉

在线文件大小换算

https://www.bejson.com/convert/filesize

实例的 redis内存满了

used_memory_human:10.04G

maxmemory_human:10.00G

设置为 15G

> config set  maxmemory 16106127360

>  config rewrite

参考

为什么删除了大量的数据后,Redis的内存占用率依然很高?

https://www.zhihu.com/question/433891296/answer/1616915821

Redis的内存淘汰策略问题

https://removeif.github.io/database/redis/Redis%E7%9A%84%E5%86%85%E5%AD%98%E6%B7%98%E6%B1%B0%E7%AD%96%E7%95%A5%E9%97%AE%E9%A2%98.html

如何解决Redis大key问题,看这一篇就够了

https://www.jianshu.com/p/50c0894c0a19

redis查找大key

Redis 获取大 key 的几种方式

https://hxd.life/2019/07/15/Redis-%E8%8E%B7%E5%8F%96%E5%A4%A7key%E7%9A%84%E5%87%A0%E7%A7%8D%E6%96%B9%E5%BC%8F/

redis-rdb-cli

https://github.com/leonchen83/redis-rdb-cli

Redis rdb CLI Redis CLI 工具

https://m.jb51.cc/kaifagongju/1183907.html