温馨提示×

Ubuntu Redis内存如何配置

小樊
53
2025-09-21 08:54:59
栏目: 云计算

Ubuntu Redis内存配置指南

1. 安装Redis(若未安装)

首先确保系统已安装Redis,使用以下命令更新包列表并安装:

sudo apt update && sudo apt install redis-server -y

2. 定位Redis配置文件

Ubuntu系统下,Redis的主配置文件默认路径为/etc/redis/redis.conf。可通过以下命令快速验证:

sudo nano /etc/redis/redis.conf  # 用文本编辑器打开配置文件

或通过ps命令查看Redis启动时加载的配置文件路径:

ps aux | grep redis
# 输出中包含类似 "/usr/bin/redis-server /etc/redis/redis.conf" 的路径

3. 修改内存配置参数

在配置文件中,重点调整以下两个核心参数:

  • 设置最大内存限制:找到# maxmemory <bytes>行(默认被注释),取消注释并设置所需内存大小(支持kbmbgb单位,推荐使用gbmb)。例如,限制为2GB:
    maxmemory 2gb
    
  • 选择内存淘汰策略:找到# maxmemory-policy noeviction行(默认策略为noeviction,即内存满时不删除数据,可能导致写入失败),取消注释并选择合适的策略。常用策略:
    • allkeys-lru:从所有键中删除最近最少使用的键(适用于缓存场景,推荐);
    • volatile-lru:从设置了过期时间的键中删除最近最少使用的键;
    • allkeys-random:随机删除所有键;
    • volatile-ttl:从设置了过期时间的键中删除剩余生存时间最短的键。 示例:
    maxmemory-policy allkeys-lru
    

4. 重启Redis服务使配置生效

修改配置文件后,需重启Redis服务:

sudo systemctl restart redis

验证服务状态是否正常:

sudo systemctl status redis
# 若显示 "active (running)" 则表示服务已启动

5. 验证内存配置是否生效

通过Redis命令行工具redis-cli连接服务器,执行以下命令查看当前内存限制:

redis-cli
CONFIG GET maxmemory

正常输出应显示设置的值(如2gb对应的字节数2147483648):

1) "maxmemory"
2) "2147483648"

6. 可选:优化其他内存相关配置

  • 开启持久化(可选但推荐):在配置文件中启用RDB或AOF持久化,避免数据丢失:
    # RDB快照(默认开启)
    save 900 1       # 900秒内至少1次修改则保存
    save 300 10      # 300秒内至少10次修改则保存
    save 60 10000    # 60秒内至少10000次修改则保存
    dbfilename dump.rdb
    dir /var/lib/redis  # 数据存储目录
    
    # AOF日志(可选开启)
    appendonly yes
    appendfilename "appendonly.aof"
    
  • 设置密码:增强安全性,取消# requirepass foobared注释并修改密码:
    requirepass your_strong_password
    
    重启Redis后,需使用AUTH命令认证:
    redis-cli
    AUTH your_strong_password
    

通过以上步骤,即可完成Ubuntu系统下Redis的内存配置。根据实际业务需求调整maxmemory的值和淘汰策略,能有效避免Redis因内存溢出导致的性能问题。

0