Redis是一个开源的内存数据结构存储系统,用作数据库、缓存和消息中间件。本文将详细介绍在Linux系统上安装Redis以及三种不同的启动方式。
![图片[1]_Linux安装Redis及三种启动方式详解_知途无界](https://zhituwujie.com/wp-content/uploads/2025/12/d2b5ca33bd20251209100819.png)
一、Redis安装
1.1 环境准备
# 更新系统包管理器
sudo apt update # Ubuntu/Debian
# 或
sudo yum update # CentOS/RHEL
# 安装编译工具和依赖
sudo apt install build-essential tcl -y # Ubuntu/Debian
# 或
sudo yum groupinstall "Development Tools" -y
sudo yum install tcl -y # CentOS/RHEL
1.2 下载和编译安装Redis
# 1. 下载Redis源码
cd /usr/local/src
sudo wget https://download.redis.io/releases/redis-7.2.4.tar.gz
# 2. 解压
sudo tar xzf redis-7.2.4.tar.gz
cd redis-7.2.4
# 3. 编译
sudo make
# 4. 运行测试(可选但推荐)
sudo make test
# 5. 安装Redis到系统
sudo make install
# 6. 创建Redis相关目录
sudo mkdir -p /etc/redis
sudo mkdir -p /var/lib/redis
sudo mkdir -p /var/log/redis
# 7. 复制配置文件
sudo cp redis.conf /etc/redis/
1.3 配置Redis
编辑配置文件 /etc/redis/redis.conf:
sudo vim /etc/redis/redis.conf
关键配置项修改:
# 绑定地址,允许远程连接(根据需求设置)
bind 127.0.0.1 ::1
# 或者允许所有连接(生产环境谨慎使用)
# bind 0.0.0.0
# 保护模式
protected-mode yes
# 端口
port 6379
# 后台运行
daemonize yes
# PID文件路径
pidfile /var/run/redis.pid
# 日志级别
loglevel notice
# 日志文件
logfile /var/log/redis/redis.log
# 数据库文件
dir /var/lib/redis
# 设置密码(强烈建议)
requirepass your_strong_password_here
# 最大内存设置(根据服务器内存调整)
# maxmemory 256mb
# maxmemory-policy allkeys-lru
创建Redis用户和设置权限:
# 创建Redis用户
sudo adduser --system --group --no-create-home redis
# 设置目录权限
sudo chown -R redis:redis /var/lib/redis
sudo chown -R redis:redis /var/log/redis
sudo chown redis:redis /etc/redis/redis.conf
二、三种启动方式详解
2.1 方式一:直接启动(前台启动)
这是最简单的启动方式,适用于开发和测试环境。
# 直接使用redis-server启动
redis-server /etc/redis/redis.conf
# 或者不指定配置文件,使用默认配置启动
redis-server
# 启动并指定端口
redis-server --port 6380
# 启动并指定配置文件
redis-server /path/to/your/redis.conf
特点:
- ✅ 简单直接,无需额外配置
- ✅ 适合快速测试和开发
- ❌ 终端关闭后Redis进程会终止
- ❌ 无法进行进程管理
- ❌ 不适合生产环境
停止方式:
# 在另一个终端使用redis-cli关闭
redis-cli shutdown
# 或者查找进程ID并杀死
ps aux | grep redis-server
sudo kill <PID>
2.2 方式二:后台启动(守护进程启动)
通过配置文件的 daemonize yes 实现后台运行,这是最常用的启动方式。
# 确保配置文件中 daemonize yes
grep "daemonize" /etc/redis/redis.conf
# 使用配置文件启动
redis-server /etc/redis/redis.conf
# 检查是否启动成功
ps aux | grep redis-server
redis-cli ping
创建系统服务文件(推荐):
创建systemd服务文件 /etc/systemd/system/redis.service:
[Unit]
Description=Redis In-Memory Data Store
After=network.target
[Service]
Type=forking
User=redis
Group=redis
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown
PIDFile=/var/run/redis.pid
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
启用并启动Redis服务:
# 重新加载systemd配置
sudo systemctl daemon-reload
# 启用开机自启
sudo systemctl enable redis
# 启动Redis服务
sudo systemctl start redis
# 检查服务状态
sudo systemctl status redis
# 查看日志
sudo journalctl -u redis -f
服务管理命令:
# 启动
sudo systemctl start redis
# 停止
sudo systemctl stop redis
# 重启
sudo systemctl restart redis
# 查看状态
sudo systemctl status redis
# 禁用开机自启
sudo systemctl disable redis
特点:
- ✅ 后台稳定运行
- ✅ 可通过系统服务管理
- ✅ 支持开机自启
- ✅ 适合生产环境
- ❌ 需要root权限进行服务管理
2.3 方式三:使用Redis启动脚本
Redis源码包中自带了启动脚本,可以方便地管理Redis实例。
# 进入Redis源码 utils 目录
cd /usr/local/src/redis-7.2.4/utils
# 执行安装脚本
sudo ./install_server.sh
执行脚本后会进入交互式配置:
Welcome to the redis service installer
This script will help you easily set up a running redis server
Please select the redis port for this instance: [6379]
Selecting default: 6379
Please select the redis config file name [/etc/redis/6379.conf]
Selected default - /etc/redis/6379.conf
Please select the redis log file name [/var/log/redis_6379.log]
Selected default - /var/log/redis_6379.log
Please select the redis data directory name [/var/lib/redis/6379]
Selected default - /var/lib/redis/6379
Please select the redis executable path [/usr/local/bin/redis-server]
Selected config:
Port : 6379
Config file : /etc/redis/6379.conf
Log file : /var/log/redis_6379.log
Data dir : /var/lib/redis/6379
Executable : /usr/local/bin/redis-server
Cli Executable : /usr/local/bin/redis-cli
Is this ok? Then press ENTER to go on or Ctrl-C to abort.
Copied /tmp/6379.conf => /etc/redis/6379.conf
Installing service...
Successfully added to chkconfig!
Successfully added to runlevels 345!
Starting Redis server...
Installation successful!
管理多个Redis实例:
# 查看已安装的Redis实例
sudo service redis_6379 status
# 启动特定实例
sudo service redis_6379 start
# 停止特定实例
sudo service redis_6379 stop
# 重启特定实例
sudo service redis_6379 restart
自定义启动脚本示例:
创建自定义启动脚本 /usr/local/bin/redis-start:
#!/bin/bash
# Redis启动脚本
REDIS_DIR="/etc/redis"
REDIS_CONF="$REDIS_DIR/redis.conf"
REDIS_LOG="/var/log/redis/startup.log"
REDIS_PID="/var/run/redis.pid"
case "$1" in
start)
echo "Starting Redis..."
if [ -f $REDIS_PID ]; then
echo "Redis is already running (PID: $(cat $REDIS_PID))"
exit 1
fi
redis-server $REDIS_CONF >> $REDIS_LOG 2>&1 &
echo "Redis started. Check $REDIS_LOG for details."
;;
stop)
echo "Stopping Redis..."
if [ ! -f $REDIS_PID ]; then
echo "Redis is not running"
exit 1
fi
redis-cli shutdown
echo "Redis stopped."
;;
restart)
$0 stop
sleep 2
$0 start
;;
status)
if [ -f $REDIS_PID ]; then
echo "Redis is running (PID: $(cat $REDIS_PID))"
else
echo "Redis is not running"
fi
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
exit 1
;;
esac
exit 0
给脚本执行权限:
sudo chmod +x /usr/local/bin/redis-start
使用自定义脚本管理:
# 启动
sudo redis-start start
# 停止
sudo redis-start stop
# 重启
sudo redis-start restart
# 查看状态
sudo redis-start status
特点:
- ✅ 支持多实例管理
- ✅ 灵活的自定义配置
- ✅ 适合需要运行多个Redis实例的场景
- ✅ 脚本化管理,操作简单
- ❌ 需要额外的配置和管理
三、验证安装和连接测试
3.1 基本连接测试
# 连接Redis
redis-cli
# 如果设置了密码,需要认证
127.0.0.1:6379> AUTH your_strong_password_here
OK
# 测试连接
127.0.0.1:6379> PING
PONG
# 设置和获取值
127.0.0.1:6379> SET test_key "Hello Redis"
OK
127.0.0.1:6379> GET test_key
"Hello Redis"
# 退出
127.0.0.1:6379> QUIT
3.2 远程连接测试
# 从另一台机器连接
redis-cli -h your_redis_server_ip -p 6379 -a your_password
# 测试远程连接
redis-cli -h your_redis_server_ip -p 6379 PING
四、防火墙配置
如果需要在远程访问Redis,需要配置防火墙:
# Ubuntu/Debian (使用ufw)
sudo ufw allow 6379
sudo ufw enable
# CentOS/RHEL (使用firewalld)
sudo firewall-cmd --permanent --add-port=6379/tcp
sudo firewall-cmd --reload
# 或者只允许特定IP访问
sudo ufw allow from your_client_ip to any port 6379
五、总结与选择建议
| 启动方式 | 适用场景 | 优点 | 缺点 |
|---|---|---|---|
| 直接启动 | 开发测试 | 简单快速 | 不稳定,不适合生产 |
| 后台启动(系统服务) | 生产环境 | 稳定可靠,易管理 | 需要root权限 |
| 启动脚本 | 多实例管理 | 灵活,支持多实例 | 配置相对复杂 |
推荐选择:
- 开发环境:使用直接启动方式
- 生产环境:使用系统服务方式(方式二)
- 多实例需求:使用启动脚本方式(方式三)
通过以上步骤,您可以在Linux系统上成功安装Redis,并根据实际需求选择合适的启动方式来管理Redis服务。
© 版权声明
文中内容均来源于公开资料,受限于信息的时效性和复杂性,可能存在误差或遗漏。我们已尽力确保内容的准确性,但对于因信息变更或错误导致的任何后果,本站不承担任何责任。如需引用本文内容,请注明出处并尊重原作者的版权。
THE END

























暂无评论内容