📌 温馨提示:
本文内容可能随时间变动而失效,请以页面显示的更新时间为准。
若内容已不准确或资源失效,欢迎留言或联系站长反馈修正。
⚠️ 免责声明:
本文仅供学习与参考,观点仅代表作者个人意见,与本站无关。
如有侵权问题,请立即联系我们处理,谢谢理解与支持。
本文内容可能随时间变动而失效,请以页面显示的更新时间为准。
若内容已不准确或资源失效,欢迎留言或联系站长反馈修正。
⚠️ 免责声明:
本文仅供学习与参考,观点仅代表作者个人意见,与本站无关。
如有侵权问题,请立即联系我们处理,谢谢理解与支持。
🧠 一、Redis 简介
Redis(Remote Dictionary Server)是一个开源的高性能键值对(Key-Value)内存数据库,支持持久化存储,可用作数据库、缓存、消息队列等。
- 官方地址:https://redis.io
- 特点:
- 内存存储,速度极快
- 支持多种数据结构:字符串、哈希、列表、集合、有序集合、位图、HyperLogLog 等
- 提供持久化机制(RDB、AOF)
- 支持发布订阅(Pub/Sub)
- 支持主从复制与哨兵、高可用(Redis Sentinel)与集群部署
📁 二、Redis 安装后的目录结构(以 yum 安装为例)
/usr/bin/redis-server ← Redis 服务启动命令
/usr/bin/redis-cli ← Redis 客户端命令行工具
/etc/redis.conf ← Redis 主配置文件
/var/lib/redis/ ← Redis 数据持久化目录
/var/log/redis/redis.log ← Redis 日志文件(需配置开启)
/var/run/redis/redis.pid ← Redis 运行 PID 文件
/usr/lib/systemd/system/redis.service ← systemd 启动服务文件
📌 有些路径可根据实际系统版本不同而有所变化,可通过配置文件指定或在编译安装时定义。
⚙️ 三、Redis 配置文件详解 /etc/redis.conf
Redis 使用纯文本配置文件,字段格式为:配置项 值
,注释以 #
开头。
🔹 基础配置项
bind 127.0.0.1
port 6379
daemonize yes
pidfile /var/run/redis/redis.pid
logfile /var/log/redis/redis.log
dir /var/lib/redis/
配置项 | 含义 |
---|---|
bind | 监听 IP,默认只允许本地连接,可设为 0.0.0.0 允许外部访问 |
port | Redis 服务监听端口,默认 6379 |
daemonize | 是否以守护进程运行,设为 yes 表示后台运行 |
pidfile | 记录 redis 进程号的文件路径 |
logfile | 日志文件路径,默认使用标准输出(可以写入日志文件) |
dir | Redis 持久化文件(RDB、AOF)存储目录 |
🔸 持久化配置
save 900 1
save 300 10
save 60 10000
rdbcompression yes
dbfilename dump.rdb
appendonly no
appendfilename "appendonly.aof"
appendfsync everysec
配置项 | 含义 |
---|---|
save | RDB 持久化规则(单位:秒/次数) |
rdbcompression | 是否对 RDB 文件启用压缩 |
dbfilename | RDB 文件名 |
appendonly | 是否开启 AOF 持久化(更安全) |
appendfilename | AOF 文件名称 |
appendfsync | AOF 同步频率:always 、everysec (推荐)、no |
🔸 内存控制与淘汰策略
maxmemory 256mb
maxmemory-policy allkeys-lru
配置项 | 含义 |
---|---|
maxmemory | 最大使用内存上限,超过后启用淘汰策略 |
maxmemory-policy | 淘汰策略,如: |
noeviction
:内存满后拒绝写入allkeys-lru
:基于所有键的 LRU 淘汰volatile-lru
:只淘汰设置了过期时间的键allkeys-random
:随机淘汰任意键volatile-ttl
:淘汰最短剩余时间的键 |
🔸 安全性设置
requirepass yourpassword
配置项 | 含义 |
---|---|
requirepass | 设置 Redis 的访问密码(强烈推荐) |
🔸 主从复制与集群(可选)
slaveof 192.168.1.100 6379
masterauth yourpassword
配置项 | 含义 |
---|---|
slaveof | 将当前 Redis 实例设置为从节点 |
masterauth | 主节点密码 |
🔸 客户端连接限制
timeout 300
tcp-keepalive 60
配置项 | 含义 |
---|---|
timeout | 客户端空闲连接超时时间(秒) |
tcp-keepalive | TCP 保活时间,控制连接是否被断开 |
🔧 四、Redis 服务控制(systemd)
使用以下命令管理 Redis 服务:
# 启动
systemctl start redis
# 停止
systemctl stop redis
# 重启
systemctl restart redis
# 查看状态
systemctl status redis
# 开机自启
systemctl enable redis
🧪 五、测试连接
# 启动 redis-cli 客户端
redis-cli
# 如果设置了密码:
redis-cli -a yourpassword
✅ 六、总结
通过 yum 安装的 Redis 在 CentOS 7 上具有结构清晰、配置灵活的特点。我们可以根据实际应用场景合理调整持久化策略、内存限制和安全设置等参数,以获得更稳定、高效的运行效果。
THE END
暂无评论内容