Redis 密码设置

现象:

原因:

一、通俗解释报错原因

Redis 为了安全,默认情况下:

  1. 只允许本机(服务器自己)连接,拒绝外部连接。
  2. 如果你没有给 Redis 设置密码,它会强制开启保护模式
  3. 你的 Go 代码(运行在服务器上)虽然是本地访问,但因为时间问题修复后,Redis 的连接策略变了,导致代码连接被拒绝,服务启动失败。

二、怎么解决?(两种方案)

方案一:临时关闭保护模式(最快,推荐先试)

登录服务器终端,执行两条命令,马上修复:

bash 复制代码
# 1. 临时关闭保护模式(重启 Redis 后失效,用于快速恢复服务)
redis-cli CONFIG SET protected-mode no

# 2. 重启你的 CoinClient 服务
sudo supervisorctl restart ExchangeApi-CoinClient
方案二:永久设置密码(安全,推荐生产环境用)

如果你对外暴露了 Redis 端口,必须设置密码,否则很容易被攻击。

bash 复制代码
# 1. 登录 Redis
redis-cli

# 2. 设置密码(临时生效,重启失效)
127.0.0.1:6379> CONFIG SET requirepass "你的新密码"

# 3. 或者直接修改配置文件(永久生效)
# 打开配置文件
sudo vi /etc/redis/redis.conf
# 找到 # requirepass foobared,去掉注释改成 requirepass 123456(密码自己定)
# 重启 Redis
sudo systemctl restart redis

你想永久关闭 Redis 的保护模式(或永久解除连接限制),核心是修改 Redis 配置文件并重启,这样即使服务器 / Redis 重启,设置也不会失效。我给你两种永久解决方案(选一种即可),兼顾「便捷性」和「安全性」:

方案三:永久关闭保护模式(最简单,适合内网服务器)
操作步骤:
1.编辑 Redis 配置文件
bash 复制代码
# Ubuntu/Debian 系统
sudo vi /etc/redis/redis.conf

# CentOS/RHEL 系统(如果是这个系统,路径不同)
sudo vi /etc/redis/6379.conf
2.找到并修改保护模式配置

在配置文件中搜索 protected-mode(按 /protected-mode 快速搜索),找到这一行:

bash 复制代码
protected-mode yes  # 默认是 yes(开启)

改成:

bash 复制代码
protected-mode no  # 永久关闭保护模式
3.重启 Redis 使配置生效
bash 复制代码
# Ubuntu/Debian
sudo systemctl restart redis

# CentOS/RHEL
sudo systemctl restart redis-server
4.验证是否生效
bash 复制代码
redis-cli CONFIG GET protected-mode
相关推荐
数据库小组1 小时前
2026 年,MySQL 到 SelectDB 同步为何更关注实时、可观测与可校验?
数据库·mysql·数据库管理工具·数据同步·ninedata·selectdb·迁移工具
华科易迅1 小时前
MybatisPlus增删改查操作
android·java·数据库
Kethy__1 小时前
计算机中级-数据库系统工程师-计算机体系结构与存储系统
大数据·数据库·数据库系统工程师·计算机中级
SHoM SSER1 小时前
MySQL 数据库连接池爆满问题排查与解决
android·数据库·mysql
熬夜的咕噜猫2 小时前
MySQL备份与恢复
数据库·oracle
jnrjian2 小时前
recover database using backup controlfile until cancel 假recover,真一致
数据库·oracle
lifewange3 小时前
java连接Mysql数据库
java·数据库·mysql
大妮哟3 小时前
postgresql数据库日志量异常原因排查
数据库·postgresql·oracle
还是做不到嘛\.4 小时前
Dvwa靶场-SQL Injection (Blind)-基于sqlmap
数据库·sql·web安全
不写八个4 小时前
PHP教程004:php链接mysql数据库
数据库·mysql·php