当前位置: 首页 > news >正文

【redis】redis重新创建集群

【redis】redis重新创建集群

  • 【一】过程
    • 【1】停止所有 Redis 集群节点
    • 【2】清理每个节点的集群残留数据
    • 【3】重启服务
    • 【4】创建集群,验证集群节点
    • 【5】常见问题
  • 【二】客户端连接集群并使用
    • 【1】以redis集群方式进行连接
    • 【2】查看集群状态
    • 【3】查看集群中的节点
    • 【4】添加数据并查看
    • 【5】客户端工具连接

【一】过程

【1】停止所有 Redis 集群节点

先把 3 台服务器上的 Redis 进程全部停止,防止清理文件时进程写入数据:

# 登录每台Redis服务器,执行停止命令(替换为你的Redis安装路径)# 方式1:用redis-cli停止(推荐,优雅关闭)redis-cli-h 本机IP-p 6379 shutdown# 方式2:若方式1失败,用kill命令(谨慎,避免数据丢失)ps-ef|grep redis-server|grep-v grep|awk'{print $2}'|xargskill-9

验证停止结果:ps -ef | grep redis-server 无输出则说明已停止。

【2】清理每个节点的集群残留数据

Redis 集群的元数据、槽位信息、数据会存在数据目录和集群配置文件中,必须全部删除,否则重新创建集群会读取旧数据。

先查看redis.conf,确认数据存储路径(每台节点都要查),确定数据存储路径后,删除data目录下的文件

cd/home/redis/redis_home/6379/data&&rm-rf*cd/home/redis/redis_home/6380/data&&rm-rf*

【3】重启服务

cd/home/redis/redis_home/bin./redis-server../6379/conf/redis.conf &&./redis-server../6380/conf/redis.conf

即使删除了文件,部分节点可能残留集群标识,执行重置命令确保节点回到 “单机” 状态:

# 启动单个Redis节点(先不创建集群)redis-server/etc/redis/redis.conf# 连接节点,重置集群状态redis-cli-h 本机IP-p 6379 127.0.0.1:6379> CLUSTER RESET HARD# 硬重置,清除所有集群相关数据127.0.0.1:6379>exit# 再次停止该节点(准备重新创建集群)redis-cli-h 本机IP-p 6379 shutdown

每台节点都要执行上述 “启动→重置→停止” 操作!

【4】创建集群,验证集群节点

如果配置了host就用host的名称,也可以直接在命令里使用ip

./redis-cli-a Yatop@Bqd@2025--cluster create redis1.yatop.com:6379 redis1.yatop.com:6380 redis2.yatop.com:6379 redis2.yatop.com:6380 redis3.yatop.com:6379 redis3.yatop.com:6380--cluster-replicas 1
cluster info cluster nodes

【5】常见问题

(1)创建集群提示 “node is not empty”:
原因是残留了数据 / 元数据,回到步骤 2 重新清理nodes-6379.conf和dump.rdb;
(2)集群创建后槽位未分配:
执行redis-cli --cluster fix 192.168.1.101:6379自动修复槽位;
(3)节点无法连接:
检查防火墙(开放 6379 和 16379 端口)、redis.conf中bind配置(建议设为 0.0.0.0)、protected-mode设为no。

【二】客户端连接集群并使用

【1】以redis集群方式进行连接

注意:-c 表示是以redis集群方式进行连接

./redis-cli-h 192.168.0.102-p 7001-c

【2】查看集群状态

cluster info

【3】查看集群中的节点

cluster nodes

【4】添加数据并查看

从7001添加数据看看(如何选择和分配槽位slot的原理看一下)

从7002查询数据

【5】客户端工具连接

可以使用Another Redis Desktop Manager
下载地址:https://gitee.com/qishibo/AnotherRedisDesktopManager/releases

创建连接会话的时候,勾选cluster,标识连接redis集群,这样所有节点槽位的数据都可以查到了

http://www.jsqmd.com/news/464616/

相关文章:

  • 【限时免费】 claudecodeui:AI编程助手可视化界面
  • 对学生信息管理系统的改进
  • Shell编程-3
  • WSL端口代理配置全攻略:从零开始实现本地IP访问(附常见问题排查)
  • ansible变量-循环-判断-jinja2模板
  • 5分钟搞定Flink1.19本地部署:用JDK17运行WordCount示例教程
  • 7步掌握 Angular 项目的 Pull Request 评审流程:从提交到合并的完整指南
  • ansible变量-调试-优化
  • docker容器安装与使用
  • 【Gromacs】使用伞形采样研究Her2蛋白聚集的详细操作指南
  • 国产数据库新选择:GBase-8a单机版在Linux下的保姆级安装教程(附常见问题解决)
  • STM32以太网开发实战:DP83848 vs LAN8742选型指南(附CubeMX配置)
  • MATLAB模糊控制器实战:从零搭建智能小费计算系统(附完整代码)
  • Mysql 笔记
  • PyTorch反向传播实战:从计算图到梯度下降的完整代码解析(附可视化训练过程)
  • 从数学推导到代码实现:手把手教你写PyTorch自定义权重初始化
  • 杰理AC701N的板级配置AD的使用
  • Qt信号槽进阶指南:从Qt4到Qt5的信号重载与槽函数优化(避坑大全)
  • 从零到专业:3个AI提示词框架让你工作效率翻倍(含避坑指南)
  • 1为何扣子空间智能体默认不支持短信与邮件发送:技术沙盒、安全合规与插件生态深度解析
  • FPGA开发者的效率神器:3种方法解决Vivado多版本默认启动问题(含拖拽技巧)
  • WinForm程序如何优雅地请求管理员权限?3种方法实测对比(含UAC原理)
  • DIN 75220 标准汽车阳光模拟试验与户外试验对比研究
  • 04. Capture 中 Part Manager 应用场景(二)管理变种 BOM I OrCAD X Capture CIS 设计小诀窍第三季
  • EtherCAT从零到实战:如何用树莓派搭建低成本运动控制原型(附IGH配置指南)
  • SQLyog保姆级教程:从安装到实战操作MySQL数据库(附常见问题解决)
  • 华为云ModelArts实战:5分钟搞定深度学习模型训练(附OBS上传避坑指南)
  • 从路由器转发到代码实现:图解分组交换时延计算全流程
  • 从Shadertoy到Cesium:那些GLSL移植踩过的坑(烟雾效果调试实录)
  • 实时美颜滤镜卡顿怎么办?美颜sdk滤镜特效开发优化方案