Centos 7.6安装redis-6.2.6

  1. 安装依赖

确保系统已经安装了必要的编译工具和库:

sudo yum groupinstall "Development Tools" -y

sudo yum install gcc make tcl -y

  1. 解压 Redis 源码包

进入 /usr/local/ 目录并解压 redis-6.2.6.tar.gz 文件:

cd /usr/local/

sudo tar -xzf redis-6.2.6.tar.gz

cd redis-6.2.6

  1. 编译 Redis

执行以下命令进行编译:

sudo make

注意:

如果服务器性能较弱,可以使用 make MALLOC=libc 来避免内存分配器的问题。

如果出现错误,请检查是否缺少依赖项或系统资源不足。

  1. 运行测试(可选)

为了确保 Redis 编译成功并且功能正常,可以运行测试脚本:

sudo make test

测试可能需要几分钟时间。如果所有测试都通过,则表示 Redis 编译成功。

  1. 安装 Redis

将 Redis 的二进制文件安装到系统路径中:

sudo make install

这会将 Redis 的可执行文件(如 redis-server 和 redis-cli)复制到 /usr/local/bin/ 目录下。

  1. 配置 Redis

Redis 默认没有配置文件,你可以复制一个示例配置文件并进行修改:

sudo mkdir /etc/redis

sudo cp /usr/local/redis-6.2.6/redis.conf /etc/redis/redis.conf

编辑配置文件 /etc/redis/redis.conf:

sudo vi /etc/redis/redis.conf

根据需求修改以下内容:

设置 Redis 后台运行:daemonize yes

设置绑定的 IP 地址:bind 127.0.0.1(仅允许本地访问)或注释掉以允许远程访问。

设置密码保护:requirepass yourpassword

  1. 创建 Redis 系统服务

为了让 Redis 可以作为系统服务运行,创建一个 systemd 服务文件:

sudo vi /etc/systemd/system/redis.service

添加以下内容:

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

ExecStop=/usr/local/bin/redis-cli shutdown

Restart=always

Install

WantedBy=multi-user.target

保存并退出。

  1. 创建 Redis 用户和目录

为了安全起见,建议以非 root 用户运行 Redis。

sudo adduser --system --no-create-home --shell /bin/false redis

sudo mkdir /var/lib/redis

sudo chown redis:redis /var/lib/redis

sudo chmod 770 /var/lib/redis

  1. 启动 Redis 服务

重新加载 systemd 配置并启动 Redis 服务:

sudo systemctl daemon-reload

sudo systemctl start redis

sudo systemctl enable redis

  1. 验证 Redis 是否运行

使用以下命令检查 Redis 是否正常运行:

redis-cli ping

如果返回 PONG,说明 Redis 已经成功安装并运行。

  1. 测试远程连接(可选)

如果你启用了远程访问,可以通过以下命令测试:

redis-cli -h <服务器IP> -p 6379

如果设置了密码,记得使用 AUTH 命令登录:

AUTH yourpassword

相关推荐
learning_tom36 分钟前
HTML图片标签及路径详解
linux·服务器·php
tuokuac1 小时前
Redis 的相关文件作用
数据库·redis·缓存
dbdr09011 小时前
Linux 入门到精通,真的不用背命令!零基础小白靠「场景化学习法」,3 个月拿下运维 offer,第二十六天
linux·运维·服务器·网络·python·学习
大白的编程日记.2 小时前
【Linux学习笔记】信号的深入理解之软件条件产生信号
linux·笔记·学习
buyutang_2 小时前
C/C++ Linux系统编程:线程控制详解,从线程创建到线程终止
linux·c语言·c++·学习
云的牧人2 小时前
Ubuntu 22 redis集群搭建
linux·运维·ubuntu
siriuuus2 小时前
Linux 磁盘扩容及分区相关操作实践
linux·运维·服务器
To_再飞行2 小时前
K8s 存储配置资源
linux·云原生·容器·kubernetes
小猪写代码3 小时前
Ubuntu 文件权限管理
linux·ubuntu
jz_ddk3 小时前
[Linux] Linux标准块设备驱动详解:从原理到实现
linux·运维·服务器·驱动开发