开发者社区> 问答> 正文

支持的 Redis 命令有什么


云数据库 Redis 版兼容 Redis 3.0 版本,支持 Redis 3.0 的 Geo 命令。目前还有小部分暂未开放的命令和受限制的命令。

支持的命令操作

Keys(键)String(字符串)Hash(哈希表)List(列表)Set(集合)SortedSet(有序集合)
DELAPPENDHDELBLPOPSADDZADD
DUMPBITCOUNTHEXISTSBRPOPSCARDZCARD
EXISTSBITOPHGETBRPOPLPUSHSDIFFZCOUNT
EXPIREBITPOSHGETALLLINDEXSDIFFSTOREZINCRBY
EXPIREATDECRHINCRBYLINSERTSINTERZRANGE
MOVEDECRBYHINCRBYFLOATLLENSINTERSTOREZRANGEBYSCORE
PERSISTGETHKEYSLPOPSISMEMBERZRANK
PEXPIREGETBITHLENLPUSHSMEMBERSZREM
PEXPTREATGETRANGEHMGETLPUSHXSMOVEZREMRANGEBYRANK
PTTLGETSETHMSETLRANGESPOPZREMRANGEBYSCORE
RANDOMKEYINCRHSETLREMSRANDMEMBERZREVRANGE
RENAMEINCRBYHSETNXLSETSREMZREVRANGEBYSCORE
RENAMENXINCRBYFLOATHVALSLTRIMSUNIONZREVRANK
RESTOREMGETHSCANRPOPSUNIONSTOREZSCORE
SORTMSETRPOPLPUSHSSCANZUNIONSTORE
TTLMSETNXRPUSHZINTERSTORE
TYPEPSETEXRPUSHXZSCAN
SCANSETZRANGEBYLEX
OBJECTSETBITZLEXCOUNT
SETEXZREMRANGEBYLEX
SETNX
SETRANGE
STRLEN

以及
HyperLogLogPub/Sub(发布/订阅)Transaction(事务)Connection(连接)Server(服务器)Scripting(脚本)Geo(地理位置)
PFADDPSUBSCRIBEDISCARDAUTHFLUSHALLEVALGEOADD
PFCOUNTPUBLISHEXECECHOFLUSHDBEVALSHAGEOHASH
PFMERGEPUBSUBMULTIPINGDBSIZESCRIPT EXISTSGEOPOS
PUNSUBSCRIBEUNWATCHQUITTIMESCRIPT FLUSHGEODIST
SUBSCRIBEWATCHSELECTINFOSCRIPT KILLGEORADIUS
UNSUBSCRIBEKEYSSCRIPT LOADGEORADIUSBYMEMBER
CLIENT KILL
CLIENT LIST
CLIENT GETNAME
CLIENT SETNAME
CONFIG GET
MONITOR
SLOWLOG


暂未开放的命令

Keys(键)Server(服务器)
MIGRATEBGREWRITEAOF
BGSAVE
CONFIG REWRITE
CONFIG SET
CONFIG RESETSTAT
COMMAND
COMMAND COUNT
COMMAND GETKEYS
COMMAND INFO
DEBUG OBJECT
DEBUG SEGFAULT
LASTSAVE
ROLE
SAVE
SHUTDOWN
SLAVEOF
SYNC


集群实例不支持的命令

ScriptingKeysServer
EVALSCANCLIENT KILL
EVALSHACLIENT LIST
SCRIPT EXISTSCLIENT GETNAME
SCRIPT FLUSHCLIENT SETNAME
SCRIPT KILLMONITOR
SCRIPT LOAD


集群实例受限的命令

KeysStringsListsSetsSorted SetsHyperLogLogTransaction
RENAMEMSETNXRPOPLPUSHSINTERSTOREZUNIONSTOREPFMERGEDISCARD
RENAMENXSINTERZINTERSTOREPFCOUNTEXEC
SORTSUNIONSTOREMULTI
SUNIONUNWATCH
SDIFFSTOREWATCH
SDIFF
SMOVE

[backcolor=transparent]说明:

  • 受限命令只支持所操作 key 均分布在单个 hash slot 中的场景,没有实现多个 hash slot 数据的合并功能,因此需要用 hash tag 的方式确保要操作的 key 均分布在一个 hash slot 中。
    比如有 key1,aakey,abkey3,那么我们在存储的时候需要用 {key}1,aa{key},ab{key}3 的方式存储,这样调用受限命令时才能生效。具体关于 hash tag 的用法请参见 Redis 官方文档:http://redis.io/topics/cluster-spec

  • 关于 Redis 命令的详细信息,请参见官方文档

展开
收起
云栖大讲堂 2017-10-30 10:19:42 1887 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
Redis在唯品会的应用实践——架构演进与功能定制 立即下载
微博的Redis定制之路 立即下载
云数据库Redis版的开源之路 立即下载