Redis 2.8版本标准架构、Redis 4.0、5.0、6.2、7.0标准架构与集群架构均支持 eval、evalsha、script exists、script flush、script load、script kill 命令,均不支持 script debug 命令。集群架构跨 Slot 场景不支持 eval、evalsha、script exists 命令。7.0版本新增 function 相关命令,如下表所示。
命令族 | 命令 | 新增说明 |
Fuction (Redis 7.0 新增) | FUNCTION DELETE library-name | 新增 Fuction 功能。 删除一个 lib 和其中的函数。 |
| FUNCTION DUMP | 导出所有函数。 |
| FUNCTION FLUSH [ASYNC | SYNC] | 删除所有的 lib 和其中的函数。 |
| FUNCTION KILL | Kill 当前正在执行中的函数。 |
| FUNCTION LIST [LIBRARYNAME library-name-pattern] [WITHCODE] | 返回 lib 和函数的信息。 |
| FUNCTION LOAD [REPLACE] function-code | 加载/替换函数。 |
| FUNCTION RESTORE serialized-value [FLUSH | APPEND | REPLACE] |
用于恢复之前使用 SAVE 或 BGSAVE 命令保存的快照。 FLUSH:恢复快照之前,当前数据库中的所有数据都会被清空 APPEND:恢复快照之前,当前数据库中的数据将被追加到快照中。 REPLACE:恢复快照之前,当前数据库中的数据将被快照中的数据完全替换。 |
| FUNCTION STATS | 返回当前正在执行的函数的状态。 |
| FCALL function numkeys [key [key ...]] [arg [arg ...]] | 调用某个 Fuction。 |
| FCALL_RO function numkeys [key [key ...]] [arg [arg ...]] | FCALL 的 Readonly 版本。 |
scripting 族 | EVAL_RO script numkeys [key [key ...]] [arg [arg ...]] | 新增命令,可在只读副本中运行 lua script。 |
| EVALSHA_RO sha1 numkeys [key [key ...]] [arg [arg ...]] | 新增命令,可在只读副本中运行 lua script。 |
各版本具体支持情况,请参见下表。✓ 表示支持,x 表示不支持,- 表示该命令不存在跨 Slot 访问的场景。
命令 | 2.8 内存版(标准架构) | 4.0 内存版(标准架构) | 4.0 内存版(集群架构) | 5.0 内存版(标准架构) | 5.0 内存版(集群架构) | 6.2 内存版(标准架构) | 6.2 内存版(集群架构) | 7.0 内存版(标准架构) | 7.0 内存版(集群架构) | 内存版(集群架构)跨 Slot 支持 |
eval | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | x |
eval_ro | x | x | x | x | x | x | x | ✓ | ✓ | - |
evalsha | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | x |
evalsha_ro | x | x | x | x | x | x | x | ✓ | ✓ | - |
script debug | x | x | x | x | x | x | x | x | x | - |
script exists | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | x |
script flush | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | - |
script load | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | - |
script kill | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | - |
fuction delete | x | x | x | x | x | x | x | ✓ | ✓ | - |
fuction kill | x | x | x | x | x | x | x | ✓ | ✓ | - |
fuction dump | x | x | x | x | x | x | x | ✓ | ✓ | - |
fuction flush | x | x | x | x | x | x | x | ✓ | ✓ | - |
fuction list | x | x | x | x | x | x | x | ✓ | ✓ | - |
fuction load | x | x | x | x | x | x | x | ✓ | ✓ | - |
fuction restore | x | x | x | x | x | x | x | ✓ | ✓ | - |
fuction status | x | x | x | x | x | x | x | ✓ | ✓ | - |
fcall | x | x | x | x | x | x | x | ✓ | ✓ | - |
fcall_ro | x | x | x | x | x | x | x | ✓ | ✓ | - |