redis离线安装

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
相关推荐
Nyarlathotep011324 分钟前
SpringBoot Starter的用法以及原理
java·spring boot
wuwen529 分钟前
WebFlux + Lettuce Reactive 中 SkyWalking 链路上下文丢失的修复实践
java
SimonKing1 小时前
GitHub 10万星的OpenCode,正在悄悄改变我们的工作流
java·后端·程序员
Seven972 小时前
虚拟线程深度解析:轻量并发编程的未来趋势
java
雨中飘荡的记忆12 小时前
ElasticJob分布式调度从入门到实战
java·后端
考虑考虑20 小时前
JDK25模块导入声明
java·后端·java ee
_小马快跑_21 小时前
Java 的 8 大基本数据类型:为何是不可或缺的设计?
java
jiayou641 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
Re_zero1 天前
线上日志被清空?这段仅10行的 IO 代码里竟然藏着3个毒瘤
java·后端
洋洋技术笔记1 天前
Spring Boot条件注解详解
java·spring boot