redis cluster (2) 相关命令参考及慢查询

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介:

实例关闭命令

1
2
redid-cli   shutdown   说明:关闭时强制 bgsave 所以需要一些时间
    注:在start时,需要先加载数据到内存,数据加载完毕之后 redis 才会listen 端口

集群相关命令

1
2
3
1、CLUSTER INFO 打印集群的信息  
2、CLUSTER NODES 列出集群当前已知的所有节点(node),以及这些节点的相关信息。 
3、CLUSTER FAILOVER 手动故障转移,需要在slave节点上执行

节点 相关命令

1
2
3
4
1、CLUSTER MEET <ip> <port> 将 ip 和 port 所指定的节点添加到集群当中,让它成为集群的一份子。  
2、CLUSTER FORGET <node_id> 从集群中移除 node_id 指定的节点。  
3、CLUSTER REPLICATE  <node_id> 将当前节点设置为 node_id 指定的节点的从节点。  
4、CLUSTER SAVECONFIG 将节点的配置文件保存到硬盘里面。

(slot)相关命令  

1
2
3
4
5
6
7
1、CLUSTER ADDSLOTS <slot> [slot ...] 将一个或多个槽(slot)指派(assign)给当前节点。  
2、CLUSTER DELSLOTS <slot> [slot ...] 移除一个或多个槽对当前节点的指派。  
3、CLUSTER FLUSHSLOTS 移除指派给当前节点的所有槽,让当前节点变成一个没有指派任何槽的节点。  
4、CLUSTER SETSLOT <slot> NODE <node_id> 将槽 slot 指派给 node_id 指定的节点,如果槽已经指派给另一个节点,那么先让另一个节点删除该槽,然后再进行指派。  
  1)、CLUSTER SETSLOT <slot> MIGRATING <node_id> 将本节点的槽 slot 迁移到 node_id 指定的节点中。  
  2)、CLUSTER SETSLOT <slot> IMPORTING <node_id> 从 node_id 指定的节点中导入槽 slot 到本节点。  
  3)、CLUSTER SETSLOT <slot> STABLE  取消对槽 slot 的导入( import )或者迁移(migrate)。

相关命令

1
2
3
1、CLUSTER KEYSLOT <key> 计算键 key 应该被放置在哪个槽上。  
2、CLUSTER COUNTKEYSINSLOT <slot> 返回槽 slot 目前包含的键值对数量。  
3、CLUSTER GETKEYSINSLOT <slot> <count>   返回 count 个 slot 槽中的键。

不支持的命令:

1
2
1、不支持SELECT 命令,集群只使用数据库 0 
2、不支持多个KEY的操作 如 MSET、SUION、SINTER等命令 (因为KEYS 无法 hash 到同一个slot中)

redis-trib.rb 相关命令

1
2
3
4
5
1、redis-trib.rb create [--replicas N] host:ip [host:ip ...]  创建集群
2、redis-trib.rb add-node host:ip host:ip  将前面的host:ip 添加到集群中
3、redis-trib.rb check host:ip 检查集群的状态
4、redis-trib.rb reshard host:ip OR  redis-trib.rb reshard --from host:port --to host:port --slots -- yes 集群重新分片
5、redis-trib.rb del-node host:ip  'NODE ID'  将节点从集群中移除

Redis 慢查询

    Redis 的慢查询日志功能用于记录执行时间超过给定时长的命令请求, 用户可以通过这个功能产生的日志来监视和优化查询速度。

服务器配置有两个和慢查询日志相关的选项:

   slowlog-log-slower-than 选项指定执行时间超过多少微秒(1 秒等于 1,000,000 微秒)的命令请求会被记录到日志上。
    举个例子, 如果这个选项的值为 100 , 那么执行时间超过 100 微秒的命令就会被记录到慢查询日志; 如果这个选项的值为 500 , 那么执行时间超过 500 微秒的命令就会被记录到慢查询日志; 诸如此类。

    slowlog-max-len 选项指定服务器最多保存多少条慢查询日志。
    服务器使用先进先出的方式保存多条慢查询日志: 当服务器储存的慢查询日志数量等于 slowlog-max-len 选项的值时, 服务器在添加一条新的慢查询日志之前, 会先将最旧的一条慢查询日志删除。
举个例子, 如果服务器 slowlog-max-len 的值为 100 , 并且假设服务器已经储存了 100 条慢查询日志, 那么如果服务器打算添加一条新日志的话, 它就必须先删除目前保存的最旧的那条日志, 然后再添加新日志。

例:首先用 CONFIG_SET 命令将 slowlog-log-slower-than 选项的值设为 0 微秒, 这样 Redis 服务器执行的任何命令都会被记录到慢查询日志中; 接着将 slowlog-max-len 选项的值设为 5 , 让服务器最多只保存5个;最后使用 SLOWLOG GET 命令查看服务器所保存的慢查询日志










本文转自 meteor_hy 51CTO博客,原文链接:http://blog.51cto.com/caiyuanji/1892894,如需转载请自行联系原作者
相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
14天前
|
NoSQL Redis 数据库
Redis的全局命令及相关误区
Redis的全局命令及相关误区
21 0
|
22天前
|
NoSQL Redis 数据库
Redis中的常用命令有哪些?
Redis常用命令包括:PING测试连接,ECHO回显,SELECT切换数据库,QUIT关闭连接;KEYS查找key,EXISTS检查存在,DEL删除key,EXPIRE设置过期时间,TTL查看剩余生存时间,TYPE检测数据类型;STRING操作如SET/GET/MSET/MGET,INCR/DECR增减计数;HASH命令如HSET/HGET/HMSET/HMGET/HGETALL管理字段;LIST操作如LPUSH/RPUSH/LPOP/RPOP/LRANGE;
10 0
|
28天前
|
NoSQL Redis
Redis集群(六):集群常用命令及说明
Redis集群(六):集群常用命令及说明
44 0
|
2月前
|
缓存 NoSQL 数据处理
Redis事务悄然而至:命令的背后故事
Redis事务悄然而至:命令的背后故事
26 0
|
3月前
|
存储 NoSQL Redis
redis中Hash命令的基础操作
redis中Hash命令的基础操作
40 1
|
3月前
|
存储 NoSQL 安全
Redis相关命令详解及其原理:Redis基本操作、数据结构以及应用
Redis相关命令详解及其原理:Redis基本操作、数据结构以及应用
95 0
|
1月前
|
缓存 NoSQL Java
【Redis】5、Redis 的分布式锁、Lua 脚本保证 Redis 命令的原子性
【Redis】5、Redis 的分布式锁、Lua 脚本保证 Redis 命令的原子性
60 0
|
1天前
|
存储 缓存 运维
软件体系结构 - 缓存技术(5)Redis Cluster
【4月更文挑战第20天】软件体系结构 - 缓存技术(5)Redis Cluster
29 10
|
5天前
|
存储 NoSQL Java
Redis 命令
Redis 命令
61 0
|
13天前
|
运维 NoSQL 算法
Java开发-深入理解Redis Cluster的工作原理
综上所述,Redis Cluster通过数据分片、节点发现、主从复制、数据迁移、故障检测和客户端路由等机制,实现了一个分布式的、高可用的Redis解决方案。它允许数据分布在多个节点上,提供了自动故障转移和读写分离的功能,适用于需要大规模、高性能、高可用性的应用场景。
16 0