您可以在控制台上通过设置#no_loose_disabled-commands参数来禁用一些可能影响Redis服务性能、危害数据安全的命令。

背景信息

在业务场景中,无限制地允许命令使用可能带来诸多问题。一些Redis命令会直接清空大量甚至全部数据,例如flushallflushdb等;keyshgetall等命令的不当使用则会阻塞单线程的Redis服务,降低Redis服务的性能。

为保障业务稳定、高效率地运行,您可以根据实际情况禁用特定的命令,降低业务风险。

操作步骤

  1. 访问Redis实例列表,在上方选择地域,然后单击目标实例ID。
  2. 在左侧导航栏中,单击参数设置
  3. 在参数列表中找到#no_loose_disabled-commands参数,单击其操作列的修改
  4. 在弹出的对话框中填写需禁用的命令。
    设置需要禁止的Redis命令
    说明 命令以小写字母的形式填写,通过英文逗号(,)分隔多个命令,例如keys,flushall
  5. 单击确定

执行结果

通过redis-cli连接实例并执行被禁用的命令FLUSHALL后,Redis将返回错误提示:(error) ERR command 'FLUSHALL' not support for normal user禁用命令的效果

相关API

API接口 说明
DescribeParameters 查询Redis实例的配置参数和运行参数。
ModifyInstanceConfig 修改Redis实例的参数配置。