redis执行cluster nodes--报错NOAUTH Authentication required

本文介绍了解决Redis集群中出现的NOAUTH错误的方法。当尝试执行clusternodes命令时遇到此错误,意味着未通过认证。文中提供了如何查找配置文件中的密码及如何正确使用密码进行连接的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

redis执行cluster nodes-->报错NOAUTH Authentication required

错误含义是说你没有认证,说明没有使用密码连接

#cat /usr/local/redis/redis.conf | grep requirepass -n

查询出来的就是密码。

使用密码连接:

#./redis-cli -h 127.0.0.1 -p 6379 -a Passw0rd

注:-c表示以集群方式连接redis,-h指定ip地址,-p指定端口号,-a指定密码


再操作就ok了。

参考文章:https://blog.youkuaiyun.com/leisure_life/article/details/78460733

### 创建 Redis 集群并配置密码认证 Redis 是一个高性能的键值数据库,支持集群模式以实现横向扩展。在生产环境中,为了保证数据安全,通常需要为 Redis 集群配置密码认证。 #### 1. 准备工作 - 确保所有节点安装了相同版本的 Redis- 每个节点需开放两个端口:客户端通信端口(如 6379)和集群总线端口(客户端通信端口 + 10000,如 16379)。 - 使用 `redis-cli --cluster` 或旧版 `redis-trib.rb` 工具创建集群。 #### 2. 创建 Redis 集群 ##### 2.1 启动 Redis 节点 每个节点的配置文件中不要设置密码,因为构建集群时不支持密码验证[^2]。以下是一个基础配置示例: ```bash port 6379 daemonize yes bind 0.0.0.0 protected-mode no dir /var/lib/redis cluster-enabled yes cluster-config-file nodes.conf cluster-node-timeout 5000 appendonly yes ``` 启动多个 Redis 实例: ```bash redis-server /path/to/redis.conf --port 7000 redis-server /path/to/redis.conf --port 7001 ... ``` ##### 2.2 使用 redis-cli 创建集群 使用 `redis-cli --cluster create` 命令创建集群,指定所有节点地址和端口: ```bash redis-cli --cluster create 192.168.1.10:7000 192.168.1.10:7001 \ 192.168.1.11:7002 192.168.1.11:7003 \ 192.168.1.12:7004 192.168.1.12:7005 --cluster-replicas 1 ``` 该命令会自动分配哈希槽并建立主从关系。 #### 3. 配置密码认证 集群创建完成后,可以开始配置密码认证。注意,必须逐个节点进行操作,并确保所有节点都配置一致的密码。 ##### 3.1 设置密码(运行时修改) 通过 `redis-cli` 连接到每个节点并执行以下命令: ```bash redis-cli -h <host> -p <port> 127.0.0.1:7000> CONFIG SET requirepass <your_password> OK 127.0.0.1:7000> CONFIG SET masterauth <your_password> OK 127.0.0.1:7000> CONFIG REWRITE OK ``` ##### 3.2 修改配置文件 编辑每个节点的 `redis.conf` 文件,添加或修改以下配置项: ```ini requirepass your_password masterauth your_password ``` 保存后重启 Redis 节点以应用更改。 #### 4. 测试密码认证 连接到任意节点并尝试执行命令: ```bash redis-cli -h <host> -p <port> -c 127.0.0.1:7000> KEYS * (error) NOAUTH Authentication required. 127.0.0.1:7000> AUTH your_password OK 127.0.0.1:7000> KEYS * (empty array) ``` 如果能成功执行命令,则表示密码认证已生效。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值