redis简要使用

此篇以Linux为例:

安装redis

1
2
3
4
# 更新包列表
sudo apt update
# 安装Redis
sudo apt install redis-server

验证redis

1
2
3
4
5
6
# 检查Redis版本
redis-server --version
# 启动Redis服务
sudo systemctl start redis
# 设置开机自启
sudo systemctl enable redis

修改redis配置文件

修改文件vim /etc/redis/redis.conf

示例配置项

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# Redis 主配置文件

# 启用后台运行
daemonize yes

# 配置端口
port 6379

# 设置绑定地址(限制为本地访问)
bind 127.0.0.1

# 设置密码保护
requirepass my_secure_password

# 最大内存
maxmemory 256mb
maxmemory-policy allkeys-lru

# 持久化设置
appendonly yes
appendfsync everysec

# 客户端连接超时
timeout 300

# 日志设置
loglevel notice
logfile /var/log/redis/redis.log

# 数据库数量
databases 16

若需配置公网访问

1
2
3
bind 127.0.0.1,改为bind 0.0.0.0(允许所有IP访问)。
protected-mode no #默认 Redis 保护模式是yes的,Redis 将只允许本机访问,设置为 no 时,允许外部 IP 访问。
requirepass yourpassword ## 为 Redis 设置一个密码保护,防止未授权访问

基本配置项注释

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
port 6379                    # Redis监听的端口号,默认6379
bind 127.0.0.1 # 绑定IP地址,127.0.0.1表示仅本地访问,改为0.0.0.0允许公网访问
requirepass your_password_here # 设置访问密码,增强安全性
daemonize yes # 是否以守护进程方式运行,yes表示后台运行
pidfile /var/run/redis/redis.pid # 守护进程的PID文件路径
maxmemory 256mb # 最大内存限制,单位MB,此处设为256MB
maxmemory-policy allkeys-lru # 内存满时的键驱逐策略,allkeys-lru表示按最近最少使用算法移除键
appendonly yes # 启用AOF(追加文件)持久化,记录每次写操作
appendfsync everysec # AOF同步频率,everysec表示每秒同步一次
save 900 1 # RDB快照规则:900秒内至少1个键变化触发快照
save 300 10 # RDB快照规则:300秒内至少10个键变化触发快照
loglevel notice # 日志级别,notice表示记录重要信息
logfile /var/log/redis/redis.log # 日志文件路径
timeout 0 # 客户端空闲超时时间,0表示无限制
maxclients 10000 # 最大客户端连接数,设为10000
databases 16 # Redis数据库数量,默认16个
dir /var/lib/redis # 数据和快照存储目录
protected-mode yes # 保护模式,yes表示限制未授权访问(需密码或绑定IP)
activerehashing yes # 启用主动重哈希,优化内存使用

保存并重启Redis

1
systemctl restart redis

有可能需要放开防火墙,如:

  1. ufw ufw allow 6379
  2. firewall firewall-cmd --permanent --add-port=6379/tcp firewall-cmd --reload

测试是否可连接

1
redis-cli -h <服务器公网IP/公网域名> -p 6379 -a yourpassword