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

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
日志服务 SLS,月写入数据量 50GB 1个月
简介:

实例关闭命令

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
目录
相关文章
|
24天前
|
消息中间件 存储 NoSQL
java连接redis和基础操作命令
通过以上内容,您可以掌握在Java中连接Redis以及进行基础操作的基本方法,进而在实际项目中灵活应用。
93 30
|
2月前
|
NoSQL 应用服务中间件 API
Redis是如何建立连接和处理命令的
本文主要讲述 Redis 是如何监听客户端发出的set、get等命令的。
898 28
|
1月前
|
存储 运维 NoSQL
【赵渝强老师】Redis的慢查询日志
Redis慢查询日志用于记录执行时间超过预设阈值的命令,帮助开发和运维人员定位性能问题。每条慢查询日志包含标识ID、发生时间戳、命令耗时及详细信息。配置参数包括`slowlog-max-len`(默认128)和`slowlog-log-slower-than`(默认10000微秒)。实战中可通过`slowlog get`获取日志、`slowlog len`查看长度、`slowlog reset`重置日志。建议线上环境将`slowlog-max-len`设为1000以上,并根据并发量调整`slowlog-log-slower-than`。需要注意的是,慢查询只记录命令执行时间。
116 5
|
4月前
|
NoSQL Java Redis
redis的基本命令,并用netty操作redis(不使用springboot或者spring框架)就单纯的用netty搞。
这篇文章介绍了Redis的基本命令,并展示了如何使用Netty框架直接与Redis服务器进行通信,包括设置Netty客户端、编写处理程序以及初始化Channel的完整示例代码。
113 1
redis的基本命令,并用netty操作redis(不使用springboot或者spring框架)就单纯的用netty搞。
|
4月前
|
缓存 NoSQL 测试技术
Redis如何解决频繁的命令往返造成的性能瓶颈!
Redis如何解决频繁的命令往返造成的性能瓶颈!
|
3月前
|
存储 NoSQL Java
Redis命令:列表模糊删除详解
通过本文的介绍,我们详细探讨了如何在Redis中实现列表的模糊删除。虽然Redis没有直接提供模糊删除命令,但可以通过组合使用 `LRANGE`和 `LREM`命令,并在客户端代码中进行模糊匹配,来实现这一功能。希望本文能帮助你在实际应用中更有效地操作Redis列表。
154 0
|
4月前
|
存储 Prometheus NoSQL
大数据-44 Redis 慢查询日志 监视器 慢查询测试学习
大数据-44 Redis 慢查询日志 监视器 慢查询测试学习
63 3
|
4月前
|
缓存 NoSQL Redis
Redis命令:列表模糊删除详解
Redis命令:列表模糊删除详解
133 3
|
4月前
|
NoSQL 关系型数据库 MySQL
Redis 事务特性、原理、具体命令操作全方位诠释 —— 零基础可学习
本文全面阐述了Redis事务的特性、原理、具体命令操作,指出Redis事务具有原子性但不保证一致性、持久性和隔离性,并解释了Redis事务的适用场景和WATCH命令的乐观锁机制。
641 0
Redis 事务特性、原理、具体命令操作全方位诠释 —— 零基础可学习
|
4月前
|
NoSQL Redis 数据安全/隐私保护
Redis 命令
10月更文挑战第15天
61 0