文档

Redis大版本新特性与兼容性

更新时间:

云数据库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账号权限存在部分差异,如下为云数据库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

新特性

兼容性

  • 关于社区演进的Breaking change,请参见5.0 release note

    • 例如Lua脚本执行的命令不再对结果进行排序。

  • 账号名称的大小写敏感。

  • 开通VPC免密后,免密连接可通过AUTH切换不同账号。

    说明

    若您的不同账号设置了不同权限,请确保应用程序在权限范围内执行命令,否则会出现权限不足的报错。

  • 开放READONLYREADWRITE命令。

  • 云盘版与本地版存在部分差异:云盘版实例开通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免密,仅支持SENTINELget-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等安全相关信息。

  • 集群架构代理模式不支持部分命令,更多信息请参见集群架构与读写分离架构实例的命令限制