DCS Redis3.0基于开源3.0.7版本进行开发,兼容开源的协议和命令。
本章节主要介绍DCS Redis3.0命令的兼容性,包括支持命令列表,禁用命令列表,以及不支持的高版本Redis脚本和命令列表,以及命令使用限制说明。命令的具体详细语法,请前往Redis官方网站查看。
DCS Redis缓存实例支持Redis的绝大部分命令,具体支持的命令,请参考Redis3.0命令,任何兼容Redis协议的客户端都可以访问DCS。
-
因安全原因,部分Redis命令在分布式缓存服务中被禁用,具体请见Redis3.0禁用的命令。
-
DCS集群实例支持多个key,但不支持跨slot访问的Redis命令列表,如实例受限使用命令所示。
-
部分Redis命令使用时有限制,具体请见部分命令使用限制。
Redis3.0支持的命令
以下列出了Redis3.0实例支持的命令。
说明
Redis高版本的命令,在低版本中不被兼容。判断DCS Redis是否支持某个命令,可通过在Redis-cli执行该命令,如果得到(error)ERR unknown command ‘xxx’的提示,则说明不支持该命令。
如果是Proxy集群实例,不支持表格中以下命令:
“List”类型中的BLPOP、BRPOP、BRPOPLRUSH命令。
“Server”类型的CLIENT相关命令,包括CLIENT KILL、CLIENT GETNAME、CLIENT LIST、CLIENT SETNAME、CLIENT PAUSE、CLIENT REPLY。
“Server”类型的MONITOR命令。
如果是比较旧的Proxy集群实例,不支持“Key”类型中的RANDOMKE命令。
Redis3.0 支持命令清单
| Keys | String | Hash | List | Set | Sorted Set | Server |
|---|---|---|---|---|---|---|
| DEL | APPEND | HDEL | BLPOP | SADD | ZADD | FLUSHALL |
| DUMP | BITCOUNT | HEXISTS | BRPOP | SCARD | ZCARD | FLUSHDB |
| EXISTS | BITOP | HGET | BRPOPLRUSH | SDIFF | ZCOUNT | DBSIZE |
| EXPIRE | BITPOS | HGETALL | LINDEX | SDIFFSTORE | ZINCRBY | TIME |
| MOVE | DECR | HINCRBY | LINSERT | SINTER | ZRANGE | INFO |
| PERSIST | DECRBY | HINCRBYFLOAT | LLEN | SINTERSTORE | ZRANGEBYSCORE | KEYS |
| PTTL | GET | HKEYS | LPOP | SISMEMBER | ZRANK | CLIENT KILL |
| RANDOMKEY | GETRANGE | HMGET | LPUSHX | SMEMBERS | ZREMRANGEBYRANK | CLIENT LIST |
| RENAME | GETSET | HMSET | LRANGE | SMOVE | ZREMRANGEBYCORE | CLIENT GETNAME |
| RENAMENX | INCR | HSET | LREM | SPOP | ZREVRANGE | CLIENT SETNAME |
| RESTORE | INCRBY | HSETNX | LSET | SRANDMEMBER | ZREVRANGEBYSCORE | CONFIG GET |
| SORT | INCRBYFLOAT | HVALS | LTRIM | SREM | ZREVRANK | MONITOR |
| TTL | MGET | HSCAN | RPOP | SUNION | ZSCORE | SLOWLOG |
| TYPE | MSET | - | RPOPLPU | SUNIONSTORE | ZUNIONSTORE | ROLE |
| SCAN | MSETNX | - | RPOPLPUSH | SSCAN | ZINTERSTORE | - |
| OBJECT | PSETEX | - | RPUSH | - | ZSCAN | - |
| - | SET | - | RPUSHX | - | ZRANGEBYLEX | - |
| - | SETBIT | - | - | - | - | - |
| - | SETEX | - | - | - | - | - |
| - | SETNX | - | - | - | - | - |
| - | SETRANGE | - | - | - | - | - |
| - | STRLEN | - | - | - | - | - |
Redis3.0 支持命令清单
| HyperLoglog | Pub/Sub | Transactions | Connection | Scripting | Geo |
|---|---|---|---|---|---|
| PFADD | PSUBSCRIBE | DISCARD | AUTH | EVAL | GEOADD |
| PFCOUNT | PUBLISH | EXEC | ECHO | EVALSHA | GEOHASH |
| PFMERGE | PUBSUB | MULTI | PING | SCRIPT EXISTS | GEOPOS |
| - | PUNSUBSCRIBE | UNWATCH | QUIT | SCRIPT FLUSH | GEODIST |
| - | SUBSCRIBE | WATCH | SELECT | SCRIPT KILL | GEORADIUS |
| - | UNSUBSCRIBE | - | - | SCRIPT LOAD | GEORADIUSBYMEMBER |
Redis3.0禁用的命令
以下列出了Redis3.0实例禁用的命令。
Redis3.0单机和主备实例禁用命令
| Keys | Server |
|---|---|
| MIGRATE | SLAVEOF |
| - | SHUTDOWN |
| - | LASTSAVE |
| - | DEBUG相关类 |
| - | COMMAND |
| - | SAVE |
| - | BGSAVE |
| - | BGREWRITEAOF |
Redis3.0 Proxy集群实例禁用命令
| Keys | Server | List | Transactions | Connection | Cluster | codis相关 |
|---|---|---|---|---|---|---|
| MIGRATE | SLAVEOF | BLPOP | DISCARD | SELECT | CLUSTER | TIME |
| MOVE | SHUTDOWN | BRPOP | EXEC | - | - | SLOTSINFO |
| - | LASTSAVE | BRPOPLPUSH | MULTI | - | - | SLOTSDEL |
| - | DEBUG相关类 | - | UNWATCH | - | - | SLOTSMGRTSLOT |
| - | COMMAND | - | WATCH | - | - | SLOTSMGRTONE |
| - | SAVE | - | - | - | - | SLOTSCHECK |
| - | BGSAVE | - | - | - | - | SLOTSMGRTTAGSLOT |
| - | BGREWRITEAOF | - | - | - | - | SLOTSMGRTTAGONE |
| - | SYNC | - | - | - | - | - |
| - | PSYNC | - | - | - | - | - |
| - | MONITOR | - | - | - | - | - |
| - | CLIENT相关类 | - | - | - | - | - |
| - | OBJECT | - | - | - | - | - |
| - | ROLE | - | - | - | - | - |