如何编写脚本清空Azure Redis缓存?重启命令未生效求解决方案
清空Azure Redis缓存的有效脚本
你遇到的重启命令未清空数据的原因是:如果Redis实例开启了数据持久化(如RDB快照、AOF日志),节点重启后会自动加载持久化的备份数据,导致数据保留。要彻底清空所有数据,直接执行Redis原生的FLUSHALL命令是最可靠的方式,以下是两种环境下的实现脚本:
Azure CLI脚本
# 1. 获取Redis实例的主访问密钥 REDIS_KEY=$(az redis list-keys --name $Redis --resource-group $ResourceGroup --query primaryKey -o tsv) # 2. 执行FLUSHALL命令清空所有数据 az redis execute --name $Redis --resource-group $ResourceGroup --command "FLUSHALL" --key $REDIS_KEY
PowerShell脚本
# 1. 获取Redis实例的主访问密钥 $redisKeys = Get-AzRedisCacheKey -ResourceGroupName $ResourceGroup -Name $Redis $redisKey = $redisKeys.PrimaryKey # 2. 执行FLUSHALL命令清空所有数据 Invoke-AzRedisCacheCommand -ResourceGroupName $ResourceGroup -Name $Redis -Command "FLUSHALL" -Key $redisKey
注意事项
FLUSHALL会清空实例中所有数据库的全部数据,执行前请确认操作必要性- 针对仅启用SSL端口3380的实例,上述命令会自动通过SSL连接执行,无需额外配置
- 该方法适用于所有Azure Redis层级(包括C0基础层、P1高级层),不受持久化设置影响
内容的提问来源于stack exchange,提问作者ATY
相关产品推荐
相关产品推荐

