在云数据库 Tair(兼容 Redis)中,您可以创建不同版本的Redis开源版实例,本文介绍Redis开源版各版本的新特性与兼容性变更。
每部分包括社区和阿里云提供的特性及兼容性变更。
Redis开源版 7.0
新特性
关于Redis 7.0的新特性请参见7.0 release note。
例如对于使用Background线程的module命令,慢日志功能会记录整个挂起的时间;对于普通的Block类命令(例如BLPOP),慢日志功能只会记录执行时间,不记录挂起时间。
兼容性
关于社区演进的Breaking change请参见7.0 release note。
例如不再支持STRALGO命令,替换为LCS命令。
不再支持CONFIG SET/GET及其他子命令,您可以通过控制台或OpenAPI查询、修改实例的参数设置,更多信息请参见设置实例参数。
不再支持Lua脚本中的allow-oom flag,更多信息请参见#10699。
关于其他命令的支持变化,请参见Redis开源版命令支持。
Redis开源版 6.0
新特性
关于Redis 6.0的新特性请参见6.0 release note。
在集群架构直连模式中,PUBLISH命令会在集群中广播。
兼容性
关于社区演进的Breaking change请参见6.0 release note。
账号管理与社区ACL账号权限存在部分差异,如下为云数据库 Tair(兼容 Redis)的账号管理说明:
默认账号为
default
,实例名账号(例如r-bp1857n194kiuv****
)为另外一个单独账号。通过AUTH命令连接Redis时,若未指定账号则使用
default
账号鉴权。通过AUTH命令连接Redis时,若指定的账号不存在,会返回错误
-WRONGPASS invalid username-password pair
,不再自动转为默认账号鉴权。开通VPC免密后,通过AUTH命令连接Redis时,若指定的账号不存在(或指定了密码且密码错误),会返回错误
-WRONGPASS invalid username-password pair
,不再返回OK
。
CONFIG GET命令必须指定配置项,不支持通配符(*)。
关于其他命令的支持变化,请参见Redis开源版命令支持。
Redis开源版 5.0
新特性
关于Redis 5.0的新特性请参见5.0 release note。
支持时延洞察。
支持实时大Key统计。
支持TLS加密。
优化了Blocking连接的唤醒时间精度。
集群架构直连模式支持无感扩缩容。
兼容性
关于社区演进的Breaking change,请参见5.0 release note。
例如Lua脚本执行的命令不再对结果进行排序。
账号名称的大小写敏感。
开通VPC免密后,免密连接可通过AUTH切换不同账号。
说明若您的不同账号设置了不同权限,请确保应用程序在权限范围内执行命令,否则会出现权限不足的报错。
开放READONLY和READWRITE命令。
云原生版与经典版存在部分差异:云原生版实例开通VPC免密后,所有连接仍需进行白名单验证,且无法设置
#no_loose_check-whitelist-always
参数。关于其他命令的支持变化,请参见Redis开源版命令支持。
Redis开源版 4.0
新特性
关于Redis 4.0的新特性请参见4.0 release note。
支持审计日志。
支持实时热Key统计。
开通VPC免密后,可通过设置
#no_loose_check-whitelist-always
参数,选择是否对同一VPC的网络连接进行白名单验证,更多信息请参见参数支持。支持Sentinel兼容模式,需开通VPC免密,仅支持SENTINEL和get-master-addr-by-name两个子命令。
支持创建多个账号(账号名称大小写不敏感),并可以对账号设置读写、只读权限,您可以通过
AUTH user:password
切换账号。默认账号为实例名(例如
r-bp1857n194kiuv****
)。若未指定账号或者账号不存在,则自动转为默认账号鉴权(实例名)。
若开通VPC免密,免密连接无需鉴权,将使用默认账号,且无法切换账号。
集群架构支持开通直连模式地址。
集群架构支持通过设置
ptod_enabled
参数,将客户端IP透传给DB节点,更多信息请参见参数支持。
兼容性
关于社区演进的Breaking change请参见4.0 release note。
例如集群架构下需要记录Slot-to-Key的映射关系,所以相同数据的内存占用会比标准架构多。
例如集群架构下SORT命令不支持BY和GET参数。
不再支持SSL加密。
集群架构直连模式不支持部分CLUSTER命令,更多信息请参见Redis开源版命令支持。
集群架构直连模式支持SELECT命令。
说明您无法再使用SELECT命令来判断当前连接是否为Cluster mode,否则会导致误判。
在集群架构直连模式中,PUBLISH命令不会广播至其他节点。
关于其他命令的支持变化,请参见Redis开源版命令支持。
Redis开源版 2.8(已停售)
新特性
关于Redis 2.8的新特性请参见2.8 release note。
支持设置白名单。
支持VPC免密,开启该功能后:
来自该VPC内的网络连接无需进行IP白名单验证。
来自该VPC内的网络连接执行AUTH命令时,直接返回OK,无需进行密码验证。
支持SSL加密。
支持设置禁用命令。
支持代理模式(Proxy)的集群架构。
兼容性
关于社区演进的Breaking change请参见2.8 release note。
不支持部分调试类命令和管理类命令,更多信息请参见Redis开源版命令支持。
提供有限的CONFIG SET/GET命令支持:
CONFIG GET:仅返回部分配置项,不返回安全相关的配置项。
CONFIG SET:仅返回OK,不会修改参数。
提供有限的INFO命令支持,例如不返回Persistence、Replication等安全相关信息。
集群架构代理模式不支持部分命令,更多信息请参见集群架构与读写分离架构实例的命令限制。