Linux系统安装和配置Redis缓存数据库【教程】

Linux系统安装和配置Redis缓存数据库【教程】

系统教程

Redis在Linux上需配置gcc环境、修改redis.conf的daemonize、bind和protected-mode三项,并显式指定配置文件启动,否则无法远程访问、后台运行或开机自启。

Redis 在 Linux 上不是装完就能用的服务,必须改配置、配环境、绕开默认限制,否则连远程连不上、后台起不来、开机不自启——核心问题就三个:gcc 编译环境、daemonize 配置项、protected-modebind 的组合限制。

编译前必须确认 gcc 已就绪,否则 make 直接报错

Redis 是 C 写的,没 gcc 就没法编译。很多新手卡在第一步,看到 command not found: gccno such file or directory: stdio.h 就停了。

  • 先执行 gcc -v 确认是否安装;没输出就说明没装
  • CentOS/RHEL 系统用 yum install -y gcc gcc-c++ make
  • Ubuntu/Debian 系统用 apt update && apt install -y build-essential
  • 如果服务器完全离线,得手动装 rpm 包,顺序不能错:glibc-headerscppgcc,漏一个 make 就失败

redis.conf 里这三项不改,Redis 就算启动了你也连不上

默认配置是本地安全模式,适合开发机,但生产或测试环境基本等于“装了等于没开”。

  • daemonize no → 改成 daemonize yes,否则只能前台运行,关终端就挂
  • bind 127.0.0.1 → 注释掉这行(加 #),否则只监听本地回环,外部机器 ping 得通但连不上 Redis 端口
  • protected-mode yes → 改成 protected-mode no,否则即使解除了 bind,Redis 也会拒绝非本地连接(错误提示是 DENIED Redis is running in protected mode

启动命令必须带配置文件路径,否则改的配置全白费

redis-server 默认不读 redis.conf,它只按内置默认值跑。你改了 daemonizeportrequirepass,不显式指定配置文件,等于没改。

iSlide PPT

DeepSeek AI加持,输入主题生成专业PPT,支持Word/PDF等45种文档导入,职场汇报、教学提案轻松搞定

下载

  • 正确启动方式:/usr/local/bin/redis-server /path/to/your/redis.conf
  • 别用 redis-server & 后台启动——它不读配置,且进程难管理
  • 验证是否生效:启动后执行 ps aux | grep redis,看命令行参数里有没有你的 .conf 路径
  • 再连一次 redis-cli -h your_server_ip -p 6379,能进就是通了;连不上就回头检查 bindprotected-mode

开机自启别硬塞 /etc/rc.local,systemd 更可靠

/etc/rc.local 在新版 CentOS 8+/Ubuntu 20.04+ 默认不执行,或需额外启用;而且没服务依赖管理,Redis 可能比网络还早启动,导致绑定失败。

  • 推荐写个 systemd service 文件:/etc/systemd/system/redis.service
  • 关键字段必须有:Type=simpleExecStart=/usr/local/bin/redis-server /etc/redis/redis.confRestart=always
  • 启用命令只有三步:systemctl daemon-reloadsystemctl enable redissystemctl start redis
  • 查状态用 systemctl status redis,比 ps 更准,还能看到最近报错日志

真正容易被忽略的是 protected-modebind 的联动逻辑——它不是“只要注释 bind 就行”,而是“bind 为空 + protected-mode 关闭”才放行远程请求;另外,requirepass 如果设置了但没重启服务,客户端连上后执行任何命令都会返回 (error) NOAUTH Authentication required,这个错误信息本身不会告诉你密码不对,只会说没认证,得自己意识到是密码配置没生效。

本文地址:https://www.sztg.com.cn/article/622016.html

如非特殊说明,本站内容均来自于网友自主分享,如有任何问题均请联系我们进行处理!

猜您喜欢