Centos8 安装redis数据库
redis简介
本节博客演示如何在 CentOS 8 系统上从零安装 Redis,包含编译安装、基本配置及后台运行设置,适用于初学者和运维工程师。
数据库排行榜
1.环境准备工作
操作系统:CentOS 8
用户权限:具备 sudo 权限
网络连接:确保可以访问网络以下载依赖包
2.安装依赖包
# 安装 Redis 编译所需的依赖项:
# - gcc:C 编译器,用于编译 Redis 源码
# - make:构建工具,执行编译任务
# - jemalloc-devel:高性能内存分配库,Redis 默认使用 jemalloc 管理内存
sudo dnf install -y gcc make jemalloc-devel
3.下载并解压 Redis 源码
访问redis官网下载源码
cd /usr/local/src
sudo curl -O http://download.redis.io/releases/redis-7.2.4.tar.gz
sudo tar -xzf redis-7.2.4.tar.gz
cd redis-7.2.4
4.编译并安装 Redis
make
sudo make install
编译完成后的界面
编译完成后,通常会生成如下的文件
redis-server和redis-cli,其中redis-server是Redis服务器,启动Redis服务就需要运行redis-server程序,redis-cli是自带的客户端命令行工具,是学习Redis数据库重要的工具。
5.启动
启动有三种方式
5.1 前台启动
redis-server
5.2 后台启动
redis-server &
查看后台进程
如果需要关闭redis,就可以去关闭进程
redis-cli shutdown
#杀死redis服务
5.3 配置文件启动
路径假定放在 /etc/redis/redis.conf
# 绑定 IP,仅允许本机访问,若要远程连接请设置为 0.0.0.0 或指定 IP
bind 127.0.0.1
# 端口号,默认 6379,可以改为其他如 6380 避免冲突
port 6379
# 是否以守护进程方式运行(后台运行)
daemonize yes
# PID 文件路径(后台运行时需要)
pidfile /var/run/redis_6379.pid
# 日志文件路径
logfile /var/log/redis.log
# 数据持久化目录
dir /var/lib/redis
# RDB 快照规则(示例:900 秒内有 1 次修改就保存)
save 900 1
save 300 10
save 60 10000
# 是否启用 AOF 持久化
appendonly no
# 是否开启保护模式(只允许本地访问)
protected-mode yes
# 如果你想设置密码(可选)
# requirepass yourpassword
# 关闭 Redis 时允许外部客户端发起 shutdown(默认为 yes)
# shutdown-on-sigterm yes
6. 注意事项
6.1 端口冲突
Redis 默认使用端口 6379,若已有实例运行,再次启动会报错:
Failed listening on port 6379 (tcp), aborting.
解决方案
ps -ef | grep redis #检查已有实例
改用不同端口(如 6380)
或先执行 redis-cli shutdown 停止旧实例
6.2 配置文件后台启动需启用 daemonize
conf文件中添加
daemonize yes#Redis 以守护进程(daemon)方式运行,即 启动后会自动在后台运行,不会占用当前终端。
添加这行命令是为确保不卡住当前终端。
6.3 允许远程访问需修改绑定地址
bind 0.0.0.0
protected-mode no
requirepass yourpassword
6.4 添加 systemd 服务管理支持(/etc/systemd/system/redis.service)
未设置 systemd 服务,无法一键管理
手动启动的 Redis 无法用 systemctl 管理,配置 redis.service 文件。
创建 /etc/systemd/system/redis.service 实现:
[Unit]
Description=Redis In-Memory Data Store # 服务描述:Redis 内存型数据库
After=network.target # 在网络服务启动之后再启动 Redis
[Service]
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf # 启动 Redis 服务的命令,加载配置文件
ExecStop=/usr/local/bin/redis-cli shutdown # 停止 Redis 的命令,安全关闭 Redis 服务
Restart=always # Redis 异常退出时自动重启服务
User=root # 指定以 root 用户身份运行 Redis(推荐改为 redis 用户)
Group=root # 指定运行服务的用户组
[Install]
WantedBy=multi-user.target # 该服务将在系统启动进入多用户模式时自动启动
## 如何使用
sudo nano /etc/systemd/system/redis.service
# 启动服务
sudo systemctl start redis
# 停止服务
sudo systemctl stop redis
# 重启服务
sudo systemctl restart redis
# 查看状态
sudo systemctl status redis
# 设置开机自启
sudo systemctl enable redis
6.5 客户端无法连接时排查顺序
✓ Redis 是否启动成功(ps、netstat)
✓ 配置文件的 bind 和 port 设置
✓ 防火墙是否开放 Redis 端口
✓ SELinux 是否阻止
✓ 是否需要密码认证