在 Debian 系统上安装 Redis服务

在 Debian 系统上安装 Redis

方法 1:通过 APT 安装(推荐,简单稳定)

Debian 官方仓库提供了 Redis 软件包,适合大多数用户:

bash 复制代码
# 1. 更新软件包列表
sudo apt update

# 2. 安装 Redis
sudo apt install redis-server

# 3. 启动 Redis 服务
sudo systemctl start redis-server

# 4. 设置开机自启
sudo systemctl enable redis-server

# 5. 验证运行状态
sudo systemctl status redis-server
  • 配置文件路径/etc/redis/redis.conf
  • 数据目录/var/lib/redis

方法 2:手动编译安装(适合需要最新版本)

如果 Debian 仓库的 Redis 版本过旧,可以从源码编译安装:

bash 复制代码
# 1. 安装编译依赖
sudo apt install build-essential tcl

# 2. 下载最新稳定版 Redis(替换为最新版本号)
wget https://download.redis.io/redis-stable.tar.gz
tar xzf redis-stable.tar.gz
cd redis-stable

# 3. 编译安装
make && sudo make install

# 4. 创建配置和数据目录
sudo mkdir /etc/redis
sudo cp redis.conf /etc/redis/

# 5. 创建 systemd 服务文件
sudo nano /etc/systemd/system/redis.service

粘贴以下内容:

ini 复制代码
[Unit]
Description=Redis In-Memory Data Store
After=network.target

[Service]
User=redis
Group=redis
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
Restart=always

[Install]
WantedBy=multi-user.target

继续执行:

bash 复制代码
# 6. 创建 Redis 用户并设置权限
sudo adduser --system --group --no-create-home redis
sudo chown -R redis:redis /etc/redis

# 7. 启动服务
sudo systemctl daemon-reload
sudo systemctl start redis
sudo systemctl enable redis

方法 3:使用 Snap 安装(适合快速测试)

bash 复制代码
sudo apt install snapd
sudo snap install redis

配置 Redis

  1. 修改配置文件(如设置密码、允许远程访问):

    bash 复制代码
    sudo nano /etc/redis/redis.conf
    • 设置密码:取消注释 requirepass yourpassword
    • 允许远程访问:注释 bind 127.0.0.1(注意防火墙和安全风险)
  2. 重启服务生效

    bash 复制代码
    sudo systemctl restart redis-server

验证安装

bash 复制代码
# 连接 Redis CLI
redis-cli

# 测试 Ping
127.0.0.1:6379> ping
PONG

# 如果有密码,需先认证
127.0.0.1:6379> AUTH yourpassword
OK

常见问题解决

  1. 无法远程连接

    • 检查防火墙:sudo ufw allow 6379
    • 确保配置文件已取消 bind 127.0.0.1 并设置密码。
  2. 性能优化

    • 修改 /etc/sysctl.conf 添加 vm.overcommit_memory=1,执行 sudo sysctl -p 生效。

总结

方法 适用场景 优点 缺点
APT 生产环境 一键安装,自动管理 版本可能较旧
源码编译 需要最新版本/自定义功能 版本可控,灵活性高 需手动维护
Snap 快速测试 隔离环境,无需配置 性能略低,不适合生产

根据需求选择合适的方式即可!

相关推荐
牛奔9 小时前
Docker Compose 解决服务间 DNS 解析失败问题
运维·docker·容器
oMcLin9 小时前
如何在 Debian 10 上通过配置 Redis 集群的持久化选项,提升高可用性缓存系统的容错性与性能?
redis·缓存·debian
OpsEye9 小时前
监控 100 问(三):监控告警触发后如何快速定位与解决问题
运维·网络·it运维·it·监控·监控系统
线束线缆组件品替网9 小时前
Conxall 防水线缆在户外工控中的布线实践
运维·人工智能·汽车·电脑·材料工程·智能电视
济61710 小时前
linux(第十四期)--官方 SDK 移植实验-- Ubuntu20.04
linux·运维·服务器
范纹杉想快点毕业10 小时前
欧几里得算法与扩展欧几里得算法,C语言编程实现(零基础全解析)
运维·c语言·单片机·嵌入式硬件·算法
小猪佩奇TONY10 小时前
Linux 内核学习(16) --- linux x86-64 虚拟地址空间和区域
linux·运维·学习
一路向北⁢10 小时前
短信登录安全防护方案(Spring Boot)
spring boot·redis·后端·安全·sms·短信登录
杰克崔10 小时前
kprobe及kretprobe的基于例子来调试分析其原理
linux·运维·服务器·车载系统
小北方城市网10 小时前
微服务架构设计实战指南:从拆分到落地,构建高可用分布式系统
java·运维·数据库·分布式·python·微服务