1、指定目录
cd /usr/local/
2、创建redis目录
mkdir redis
3、上传解压
cd /usr/local/redis/
tar -zvxf redis-6.2.14.tar.gz
4、进入目录下
cd /usr/local/redis/redis-6.2.14
5、使用libc内存分配器编译
make MALLOC=libc
6、#安装到系统
make install
7、创建配置和数据目录
mkdir -p /etc/redis
mkdir -p /var/lib/redis
mkdir -p /var/log/redis
8、复制配置文件
cp redis.conf /etc/redis/
9、#修改配置文件以允许后台运行和远程访问
sed -i 's/daemonize no/daemonize yes/' /etc/redis/redis.conf
sed -i 's/bind 127.0.0.1/bind 0.0.0.0/' /etc/redis/redis.conf
sed -i 's/protected-mode yes/protected-mode no/' /etc/redis/redis.conf
10、启动Redis
redis-server /etc/redis/redis.conf
11、验证Redis运行,应该返回 PONG
redis-cli ping
12、创建systemd服务文件
cat > /etc/systemd/system/redis.service << 'EOF'
[Unit]
Description=Redis In-Memory Data Store
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli -h 127.0.0.1 -p 6379 shutdown
Restart=always
RestartSec=10
User=root
LimitNOFILE=65536
# 防止快速重启失败
StartLimitInterval=100
StartLimitBurst=5
[Install]
WantedBy=multi-user.target
EOF
13、重新加载systemd并启用服务
systemctl daemon-reload #重启
systemctl enable redis #自启动
systemctl start redis #启动
systemctl status redis #查看状态
14、开放Redis端口
firewall-cmd --permanent --add-port=6379/tcp
firewall-cmd --reload
15、测试
redis-cli
# 在redis-cli中执行
127.0.0.1:6379> set test "hello"
127.0.0.1:6379> get test
127.0.0.1:6379> exit
# 远程连接测试(从其他机器)
redis-cli -h 你的服务器IP -p 6379
16、防火墙配置(如果需要远程访问)
firewall-cmd --permanent --add-port=6379/tcp
firewall-cmd --reload
17、若出现重启失败
# 创建正确的 Redis 服务文件
cat > /etc/systemd/system/redis.service << 'EOF'
[Unit]
Description=Redis In-Memory Data Store
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli -a 密码 shutdown
Restart=always
RestartSec=10
User=root
LimitNOFILE=65536
WorkingDirectory=/var/lib/redis
# 设置环境变量
Environment=REDIS_PASSWORD=密码
# 标准输出和错误输出
StandardOutput=journal
StandardError=journal
# 防止快速重启失败
StartLimitInterval=100
StartLimitBurst=10
[Install]
WantedBy=multi-user.target
EOF