云数据库 Redis
  • 产品发布记录
  • 新手引导
  • 产品简介

    • 产品概述
    • 产品优势
    • 应用场景
    • 产品系列
    • 命令支持

      • 命令兼容性
      • 自定义命令
        • flushdb命令
        • flushall命令
        • info命令
        • client族命令
        • cluster命令集
        • 跨 Slot 命令支持
        • lastsave命令
        • time命令
        • Role命令
    • 地域与可用区
  • 购买指南

  • 快速入门

  • 操作指南

  • 性能白皮书
  • API文档

  • 最佳实践

  • 常见问题

  • 故障处理

  • 服务条款
  • 相关概念
  • 联系我们
  • 云数据库Redis
  • 产品简介
  • 命令支持
云数据库 Redis

云数据库Redis是首云提供的兼容开源Redis协议标准、基于键值对形式存储的内存数据库服务,具有高可用、高可靠、弹性扩展等特点。支持主从和集群两种架构,可实现亚毫秒级响应时间,每秒处理数十万个请求,可满足高吞吐、低延迟及弹性变配等业务需求。

  • 产品简介
    • 产品概述

    • 产品优势

    • 应用场景

    • 产品系列

    • 命令支持

    • 地域与可用区

  • 购买指南
    • 计费概述

    • 购买方式

    • 欠费说明

    • 调整实例规格费用说明

  • 快速入门
    • 创建Redis实例

    • 设置白名单

    • 连接Redis实例

  • 操作指南
    • 使用限制

    • 操作总览

    • 管理实例

    • 连接实例

    • 网络与安全

    • 备份与恢复

    • 数据迁移

    • 监控告警

    • 账号与密码

    • 参数配置

    • 禁用命令

    • 标签管理

  • API文档
    • 认证方式

    • API概览

    • 实例相关接口

    • 备份相关接口

    • 错误码

  • 最佳实践
    • 消息发布订阅

    • 管道传输

    • 事务处理

  • 常见问题
    • 购买计费

    • 连接登录

    • 使用数据库

    • 监控报警

    • 持久化

    • 缓存策略

  • 故障处理
    • Redis无法连接

    • 使用Csredis客户端时出现Unexpected end of stream异常

    • 使用redis-py客户端时连接集群时报错

    • 使用Jedis客户端时出现Unexpected end of stream异常

    • 使用Jedis客户端时出现OOM异常

    • 如何处理大key问题

自定义命令

最后更新时间:2021-12-02 生成PDF文件 | 前往GitHub编辑

在兼容原生Redis命令之外,云数据库Redis版还支持多个自定义命令,可以帮助您更方便地管理实例。

# flushdb命令

在集群结构中为自定义行为,操作对象为集群每一个主节点,清空当前数据库中的所有 key,cluster不支持多DB。

# flushall命令

在集群结构中为自定义行为,操作对象为集群每一个主节点,清空数据库中的所有 key,cluster不支持多DB。

# info命令

info 返回原生redis形态且支持子命令 集(server、clients、memory、persistence、stats、replication、cpu、commandstats、cluster、keyspace、modules、errorstats)。

info命令较原生做了以下自定义行为:

字段特殊说明:

  • clients 字段统计,为客户端和代理之间的连接数量
  • Replication中的role, 返回状态一直为 master,返回信息中的 IP 地址为实例的服务IP

集群结构:

特殊说明:

  • Replication中的role, 返回状态一直为 master(后端分片的其中一个主节点),slave信息为当前连接的到master(前面说的master)上对应的slave
  • 对统计类的字段做了聚合,比如:Memory、Stats、CPU

# client族命令

client list

client为自定义命令,返回内容只包含真实的客户端信息(不包含sentinel,代理自身,数据库实例等节点连接信息)。

返回格式为自定义格式,信息字段信息说明:

  • id:唯一的64位的客户端ID
  • addr:客户端的地址和端口
  • fd:套接字所使用的文件描述符
  • name:连接的名字
  • age:以秒计算的已连接时长
  • idle:以秒计算的空闲时长
  • flags:客户端 flag
  • db:该客户端正在使用的数据库 ID
  • sub:没有意义
  • multi:没有意义
  • events:文件描述符事件
  • cmd:最近一次执行的命令
test ➤ redis-cli -h 10.240.11.111 -p 9736 -a *******
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
10.240.11.111:9736> CLIENT list
id=876044 addr=10.240.11.150:52149 fd=3 name= age=3 idle=3 flags=N db=0 sub=0 multi=-1 events=r cmd=client
10.240.11.111:9736>
1
2
3
4
5

client kill 命令

操作对象为真实的客户端连接,该连接指的是客户端和代理之间的连接,返回格式跟原生一样,比如:操作其它无效socket(除client list 查到以外的连接,都是无效socket) ,返回信息:(error) ERR No such client。

# cluster命令集

cluster命令集的自定义行为是返回信息的IP 地址为实例的服务IP,为了兼容一些GUI工具,cluster 命令集返回原生形态。

自定义支持的子命令集:

  • CLUSTER NODES
  • CLUSTER SLOTS
  • CONFIG GET

例如:

cluster slots

10.240.11.115:9736> CLUSTER SLOTS
1) 1) (integer) 0
   2) (integer) 16383
   3) 1) "10.240.11.115"
      2) (integer) 9736
      3) "3865825c1a9b452178942fd31e5f5e504ba838e6"
10.240.11.115:9736>

1
2
3
4
5
6
7
8

cluster nodes

10.240.11.115:9736> CLUSTER NODES
3865825c1a9b452178942fd31e5f5e504ba838e6 10.240.11.115:9736@19736 myself,master - 0 1621836016000 0 connected 0-16383
1
2

# 跨 Slot 命令支持

集群架构目前支持跨 Slot 访问的命令,包括 DEL、SCAN、EXISTS、TOUCH、UNLINK、MGET、MSET、MSETNX、EVAL,其他多 KEY 命令的跨 Slot 访问暂不支持。

如果对key进行原子操作,可以通过hashtag 实现key在同一个node,代理支持hashtag。

# lastsave命令

在集群结构中为自定义行为,访问集群其中一个master节点上近一次 Redis 成功将数据保存到磁盘上的时间。

# time命令

在集群结构中为自定义行为,访问集群其中一个master服务器的时间。

# Role命令

在主从和集群结构中为自定义行为,返回格式同原生,返回的角色为当前主节点角色和节点信息,集群行为是,返回当前任意主节点信息。

命令兼容性
地域与可用区

← 命令兼容性 地域与可用区→

最近更新
01
_index
08-18
02
将备份数据迁移至首云Redis
07-11
03
监控概览
04-08
更多文章>

版权所有 ©2005 - 2024 Capitalonline Data Service Co., Ltd 备案序号:京ICP备06033943号 京公网安备:11010502020343号

北京首都在线科技股份有限公司(总部) 经营许可证:B1.B2-20140358 上海红之盟网络科技有限公司(首都在线全资子公司) 经营许可证:B1-20194861