Redis集群-计算key的插槽值等命令

文章目录

  • 1、集群方式登录主机6379
  • 2、计算key应该保存在那个插槽
  • 3、计算某个插槽中保存的key的数量
  • 4、返回指定槽中的键
  • 5、查看redis的版本
    • 5.1、Redis集群的自动故障转移
    • 5.2、主节点下线,从节点自动升为主节点
      • 5.2.1、杀死主节点6379
      • 5.2.2、登录从机6383,查看集群节点信息
      • 5.2.3、查看6383的主从节点的信息
    • 5.3、复活6379
    • 5.4、查看6379的主从节点信息

1、集群方式登录主机6379

[root@localhost redis]# /usr/local/redis/bin/redis-cli -c -h 192.168.74.148 -p 6379
192.168.74.148:6379> keys *
1) "k2{aa}"
2) "k1{aa}"
192.168.74.148:6379> flushall
OK
192.168.74.148:6379> keys *
(empty array)
192.168.74.148:6379> 

2、计算key应该保存在那个插槽

192.168.74.148:6379> set k1 v1
-> Redirected to slot [12706] located at 192.168.74.148:6381
OK
192.168.74.148:6381> CLUSTER KEYSLOT k1
(integer) 12706
192.168.74.148:6381> keys *
1) "k1"
192.168.74.148:6381> 

3、计算某个插槽中保存的key的数量

192.168.74.148:6381> CLUSTER COUNTKEYSINSLOT 12706
(integer) 1
192.168.74.148:6381> keys *
1) "k1"
192.168.74.148:6381> 

4、返回指定槽中的键

CLUSTER GETKEYSINSLOT <slot> <count> 命令用于返回指定槽中的键。其中,<slot> 表示要获取键的槽的索引,<count> 表示要返回的键的数量。 该命令会从指定的槽中随机选择 count 个键,并返回这些键的列表。如果槽中没有足够的键,则返回实际存在的键。

192.168.74.148:6381> CLUSTER GETKEYSINSLOT 12706 5
1) "k1"
192.168.74.148:6381> 

5、查看redis的版本

[root@localhost ~]# /usr/local/redis/bin/redis-server --version
Redis server v=7.0.10 sha=00000000:0 malloc=jemalloc-5.2.1 bits=64 build=d8b35e70c0a7be11
[root@localhost ~]# 

5.1、Redis集群的自动故障转移

  • 在Redis集群的某些版本中(如Redis 6.x及更高版本),集群本身已经内置了自动故障转移机制
  • 当集群中的某个主节点宕机时,集群中的其他节点会进行投票,选择一个从节点并将其提升为主节点。
  • 选举过程基于Raft等共识算法,确保在多个节点之间达成一致。
  • 选举成功后,新的主节点会开始处理写请求,并同步数据到其他从节点。

5.2、主节点下线,从节点自动升为主节点

[root@localhost ~]# ps -ef | grep redis | grep -v grep
root      11403      1  0 14:08 ?        00:00:17 /usr/local/redis/bin/redis-server *:6379 [cluster]
root      11412      1  0 14:09 ?        00:00:17 /usr/local/redis/bin/redis-server *:6380 [cluster]
root      11418      1  0 14:09 ?        00:00:17 /usr/local/redis/bin/redis-server *:6381 [cluster]
root      11424      1  0 14:09 ?        00:00:17 /usr/local/redis/bin/redis-server *:6382 [cluster]
root      11430      1  0 14:09 ?        00:00:17 /usr/local/redis/bin/redis-server *:6383 [cluster]
root      11436      1  0 14:09 ?        00:00:17 /usr/local/redis/bin/redis-server *:6384 [cluster]
root      12441  10116  0 15:32 pts/0    00:00:00 /usr/local/redis/bin/redis-cli -c -h 192.168.74.148 -p 6379
[root@localhost ~]# 

5.2.1、杀死主节点6379

[root@localhost ~]# kill -9 11403
[root@localhost ~]# ps -ef | grep redis | grep -v grep
root      11412      1  0 14:09 ?        00:00:17 /usr/local/redis/bin/redis-server *:6380 [cluster]
root      11418      1  0 14:09 ?        00:00:17 /usr/local/redis/bin/redis-server *:6381 [cluster]
root      11424      1  0 14:09 ?        00:00:18 /usr/local/redis/bin/redis-server *:6382 [cluster]
root      11430      1  0 14:09 ?        00:00:18 /usr/local/redis/bin/redis-server *:6383 [cluster]
root      11436      1  0 14:09 ?        00:00:17 /usr/local/redis/bin/redis-server *:6384 [cluster]
[root@localhost ~]# 

5.2.2、登录从机6383,查看集群节点信息

[root@localhost ~]# /usr/local/redis/bin/redis-cli -c -h 192.168.74.148 -p 6383
192.168.74.148:6383> CLUSTER NODES
3eac3019bcf18e8959a49f5e1389c39d51a1b0d8 192.168.74.148:6381@16381 master - 0 1719305582937 3 connected 10923-16383
dcb82723f90f0a2ab6af8fb008b5847f5aa0df45 192.168.74.148:6379@16379 master,fail - 1719305350801 1719305346760 1 disconnected
aa4ecdba6e2cc523dcefe6244a72f768fc8fbae9 192.168.74.148:6380@16380 master - 0 1719305580920 2 connected 5461-10922
5a6df4b92983ecfae646e3c7f5f2851ef118f9c0 192.168.74.148:6383@16383 myself,master - 0 1719305583000 7 connected 0-5460
f749b8d27581caf20b7a3d339d43621fbffa4962 192.168.74.148:6384@16384 slave aa4ecdba6e2cc523dcefe6244a72f768fc8fbae9 0 1719305581929 2 connected
a569032e711a267a419c99719c3b87683c2fea6c 192.168.74.148:6382@16382 slave 3eac3019bcf18e8959a49f5e1389c39d51a1b0d8 0 1719305583948 3 connected
192.168.74.148:6383> 

5.2.3、查看6383的主从节点的信息

[root@localhost ~]# /usr/local/redis/bin/redis-cli -c -h 192.168.74.148 -p 6383
192.168.74.148:6383> CLUSTER NODES
3eac3019bcf18e8959a49f5e1389c39d51a1b0d8 192.168.74.148:6381@16381 master - 0 1719305582937 3 connected 10923-16383
dcb82723f90f0a2ab6af8fb008b5847f5aa0df45 192.168.74.148:6379@16379 master,fail - 1719305350801 1719305346760 1 disconnected
aa4ecdba6e2cc523dcefe6244a72f768fc8fbae9 192.168.74.148:6380@16380 master - 0 1719305580920 2 connected 5461-10922
5a6df4b92983ecfae646e3c7f5f2851ef118f9c0 192.168.74.148:6383@16383 myself,master - 0 1719305583000 7 connected 0-5460
f749b8d27581caf20b7a3d339d43621fbffa4962 192.168.74.148:6384@16384 slave aa4ecdba6e2cc523dcefe6244a72f768fc8fbae9 0 1719305581929 2 connected
a569032e711a267a419c99719c3b87683c2fea6c 192.168.74.148:6382@16382 slave 3eac3019bcf18e8959a49f5e1389c39d51a1b0d8 0 1719305583948 3 connected
192.168.74.148:6383> info replication
# Replication
role:master
connected_slaves:0
master_failover_state:no-failover
master_replid:48cb3b42ac8412712192e5d4747dc3337bc5747d
master_replid2:ab2c4b92097802299003be0ec17821ed7eb68d27
master_repl_offset:12279
second_repl_offset:12280
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:12279
192.168.74.148:6383> 

5.3、复活6379

[root@localhost ~]# /usr/local/redis/bin/redis-server /usr/local/redis/redis6379.conf 
[root@localhost ~]# ps -ef | grep redis | grep -v grep
root      11412      1  0 14:09 ?        00:00:19 /usr/local/redis/bin/redis-server *:6380 [cluster]
root      11418      1  0 14:09 ?        00:00:19 /usr/local/redis/bin/redis-server *:6381 [cluster]
root      11424      1  0 14:09 ?        00:00:19 /usr/local/redis/bin/redis-server *:6382 [cluster]
root      11430      1  0 14:09 ?        00:00:19 /usr/local/redis/bin/redis-server *:6383 [cluster]
root      11436      1  0 14:09 ?        00:00:19 /usr/local/redis/bin/redis-server *:6384 [cluster]
root      13301      1  0 17:00 ?        00:00:00 /usr/local/redis/bin/redis-server *:6379 [cluster]
[root@localhost ~]# 

5.4、查看6379的主从节点信息

[root@localhost ~]# /usr/local/redis/bin/redis-cli -c -h 192.168.74.148 -p 6379
192.168.74.148:6379> info replication
# Replication
role:master
connected_slaves:0
master_failover_state:no-failover
master_replid:587c729d1697052a7424bb5e74321031682790ee
master_replid2:78a6a3071e3ec590e70826d029320ccd1f91e0fa
master_repl_offset:319897
second_repl_offset:319898
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:319898
repl_backlog_histlen:0
192.168.74.148:6379> CLUSTER NODES
24a1c81388b823ab2dfb411049625541562c8b1c 192.168.74.148:6379@16379 myself,master - 0 0 0 connected 10359

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/860523.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI大模型企业应用实战-Prompt让LLM理解知识

1 Prompt Prompt 可理解为指导AI模型生成特定类型、主题或格式内容的文本。 NLP中&#xff0c;Prompt 通常由一个问题或任务描述组成&#xff0c;如“给我写一篇有关RAG的文章”&#xff0c;这句话就是Prompt。 Prompt赋予LLM小样本甚至零样本学习的能力&#xff1a; LLM能力…

【网络安全学习】漏洞扫描:-03- Nikito与Wapiti漏洞扫描的使用

1️⃣ Nikto漏洞扫描 Nikto是一个开源的Web扫描评估程序&#xff0c;它可以对目标Web服务器进行快速而全面的检查&#xff0c;以发现各种潜在的安全问题和漏洞。 &#x1f170;️ 如何使用 ❓ nikto -Display 1234ep -h [域名或IP地址] -o nikto.html # -h参数&#xff1a;指…

南昌服务器托管让数据存储更安全

南昌&#xff0c;作为长江中游地区的重要中心城市&#xff0c;近年来经济发展迅速&#xff0c;产业结构不断优化。随着大数据、云计算、人工智能等新一代信息技术的快速发展&#xff0c;南昌的信息化建设步伐不断加快&#xff0c;为企业提供了良好的发展环境。在这样的背景下&a…

通过迭代器删除容器中的元素

通过之前的介绍我们知道通过迭代器来遍历单例集合的操作仍然需要借助于循环结构。而且我们知道在单例集合中调用iterator方法返回的Iterator对象中还有一个remove方法我们没有介绍&#xff0c;它的作用是删除容器中的元素。说道这里应该有人会发现一个很明显的问题&#xff0c;…

[MySql]两阶段提交

文章目录 什么是binlog使用binlog进行恢复的流程 什么是redolog缓冲池redologredolog结构 两阶段提交 什么是binlog binlog是二进制格式的文件&#xff0c;用于记录用户对数据库的修改&#xff0c;可以作用于主从复制过程中数据同步以及基于时间点的恢复&#xff08;PITR&…

Webpack: 借助 Babel+TS+ESLint 构建现代 JS 工程环境

概述 Webpack 场景下处理 JavaScript 的三种常用工具&#xff1a;Babel、TypeScript、ESLint 的历史背景、功能以及接入 Webpack 的步骤借助这些工具&#xff0c;我们能构建出更健壮、优雅的 JavaScript 应用 使用 Babel ECMAScript 6.0(简称 ES6) 版本补充了大量提升 JavaSc…

互联网应用主流框架整合之Spring Boot运维体系

先准备个简单的系统&#xff0c;配置和代码如下 # 服务器配置 server:# 服务器端口port: 8001# Spring Boot 配置 spring:# MVC 配置mvc:# Servlet 配置servlet:# Servlet 的访问路径path: /sbd# 应用程序配置application:# 应用程序名称name: SpringBootDeployment# 配置数据…

第 133 场 LeetCode 双周赛题解

A 使所有元素都可以被 3 整除的最少操作数 遍历 n u m s nums nums &#xff0c;每有一个不被 3 3 3 整除的数&#xff0c;则操作数加 1 1 1 class Solution {public:int minimumOperations(vector<int>& nums) {int res 0;for (auto x : nums)if (x % 3 ! 0)res…

杂记 | 搭建反向代理防止OpenAI API被封禁(对于此次收到邮件提示7月9日后将被屏蔽的解决参考)

文章目录 重要声明&#xff08;免责&#xff09;01 OpenAI封禁API的情况02 解决方案及原理2.1 原因分析2.2 解决方案2.3 步骤概述 03 操作步骤3.1 购买一个海外服务器3.2 申请一个域名3.3 将域名指向代理服务器3.4 在代理服务器上安装nginx3.5 配置反向代理 重要声明&#xff0…

网工内推 | 深圳网工,国企,最高20k,六险一金,NA以上认证

01 沛顿科技&#xff08;深圳&#xff09;有限公司 &#x1f537;招聘岗位&#xff1a;网络工程师 &#x1f537;岗位职责&#xff1a; 1、负责网络设备管理及维护&#xff0c;确保网络系统的稳定运行&#xff1b; 2、负责有效规划及实施网络布线系统&#xff1b; 3、负责服务…

LV、古驰奢侈品跌落神坛!2024消费风向彻底变天!2024创业新风口!2024创业小成本项目!

LV下滑6%、古驰暴跌28%&#xff0c;奢侈品在华越来越卖不动&#xff0c;外媒开始着急了&#xff01;就在前段时间&#xff0c;美媒罕见发声&#xff0c;表示今年1季度特别困难&#xff0c;有奢侈品公司在华负增长高达30%。还说如何提升销量&#xff0c;是当下奢侈品牌在华的头等…

使用matlab开发stm32总结,stm32-matlab常见的问题处理以及报错合集

1&#xff0c; 问题&#xff1a;本来是好的&#xff0c;突然编译运行报错&#xff0c;说是确少包&#xff0c; 解决方案&#xff1a;重启以后好了 2&#xff0c;有完美的马鞍波&#xff0c;为什么不能够转动呢&#xff1f; 原因是我这里模型的问题&#xff0c;我计算出来的是占…

全省高等职业学校大数据技术专业建设暨专业质量监测研讨活动顺利开展

6月21日&#xff0c;省教育评估院在四川邮电职业技术学院组织开展全省高等职业学校大数据技术专业建设暨专业质量监测研讨活动。省教育评估院副院长赖长春&#xff0c;四川邮电职业技术学院党委副书记、校长冯远洪&#xff0c;四川邮电职业技术学院党委委员、副校长程德杰等出席…

PCL笔记二 之VS环境配置(不同版本Debug+Release编译)

PCL笔记二 之VS环境配置(不同版本Debug+Release编译) PCL官网:https://github.com/PointCloudLibrary/pcl/releases众所周知,PCL是一个用于点云处理并且依赖不少三方库的一个算法库,同时在编译配置环境时也很复杂,因此这里想整理一下不同版本对应的环境配置过程,版本如下…

力扣921. 使括号有效的最少添加

Problem: 921. 使括号有效的最少添加 文章目录 题目描述思路及解法复杂度Code 题目描述 思路及解法 1.定义int变量res、need分别记录需要插入的左括号数和所需与左括号配对的右括号数&#xff1b; 2.遍历字符串&#xff1a; 2.1.若当为左括号&#xff0c;则need&#xff0c;表示…

[word] 如何在word中插入地图? #学习方法#其他

如何在word中插入地图&#xff1f; 人事部门在给即将入职的新员工发送入职资料时&#xff0c;为了方便新员工能快速找到公司的具体位置&#xff0c;一般都会在word资料中插入公司所在位置的地图。今天&#xff0c;小编就分享一个在word中插入地图的方法。 第一步&#xff1a;…

企智汇软件:专业项目管理系统,一体化PaaS平台!快速落地项目!

在快速变化的市场环境中&#xff0c;项目管理不再是简单的任务分配和时间跟踪&#xff0c;它更是一门需要精准决策、高效沟通和智能协作的管理工具。然而&#xff0c;面对日益复杂的项目需求、跨部门的协作挑战以及海量的信息数据&#xff0c;传统的项目管理方式往往显得力不从…

数值分析笔记(三)函数逼近

最佳平方逼近 函数逼近是使用一种简单易算的函数来近似表示一个复杂函数。 该问题可转化为求解线性方程组 G n C F n ​ G_{n}CF_{n}​ Gn​CFn​​ 其中&#xff0c;系数 C ( c 0 , c 1 , ⋯ , c n ) T , F n ( ( f , φ 0 ) , ( f , φ 1 ) , ⋯ , ( f , φ n ) ) T C(c…

【Java】解决Java报错:IllegalMonitorStateException in Synchronization

文章目录 引言一、IllegalMonitorStateException的定义与概述1. 什么是IllegalMonitorStateException&#xff1f;2. IllegalMonitorStateException的常见触发场景3. 示例代码 二、解决方案1. 确保在同步代码块或方法中调用wait()、notify()和notifyAll()2. 使用同步方法3. 使用…

Linux系统学习——指令三

Linux系统学习——指令三 Linux系统学习——指令三chmod — 文件执行权限添加文件执行权限去除文件执行权限 查找文件中特定关键字使用vi编辑文件并查找特定关键字文本文件查找特定关键字1: 使用 grep 命令2: 使用 find 命令3: 使用 awk 命令4: 使用 sed 命令5: 使用 ag 命令&a…