将 Redis 命令行工具与 Azure Redis 缓存配合使用
使用 redis-cli 命令行工具与 Azure Cache for Redis(用作客户端)进行交互。 使用此工具直接与 Azure Cache for Redis 实例交互,并进行调试和故障排除。
安装 redis-cli
redis-cli 工具随 Redis 包一起自动安装,可用于多个操作系统。 有关首选操作系统的最详细文档,请参阅开源的安装 Redis 指南。
Linux
redis-cli 在 Linux 上本机运行,大多数发行版都有一个包含 redis-cli 工具的 Redis 包。 例如,在 Ubuntu 上,使用以下命令安装 Redis 包:
sudo apt-get update
sudo apt-get install redis
Windows
要在 Windows 计算机上使用 redis-cli,最佳方式是安装适用于 Linux 的 Windows 子系统 (WSL)。 通过 Linux 子系统,可以直接在 Windows 上运行 Linux 工具。 若要安装 WSL,请按照 WSL 安装说明操作。
安装 WSL 后,可以使用为 WSL 选择的 Linux 发行版中提供的任何包管理来安装 redis-cli。
收集缓存访问信息
可通过以下方式收集访问缓存所需的信息:
- 在 Azure CLI 中使用 az redis list-keys
- 在 Azure PowerShell 中使用 Get-AzRedisCacheKey
- 使用 Azure 门户
本部分介绍如何从 Azure 门户检索密钥。
获取主机名、端口和访问密钥
若要连接到你的 Azure Cache for Redis 服务器,缓存客户端需要该缓存的主机名、端口和访问密钥。 在某些客户端中,这些项的名称可能略有不同。 可以在 Azure 门户中获取主机名、端口和密钥。
若要获取缓存的访问密钥,请执行以下操作:
- 在 Azure 门户中转到自己的缓存。
- 在服务菜单中的“设置”下,选择“身份验证”。
- 在“身份验证”窗格上,选择“访问密钥”选项卡。
- 若要复制访问密钥的值,请选择密钥字段中的“复制”图标。
若要获取缓存的主机名和端口,请执行以下操作:
- 在 Azure 门户中转到自己的缓存。
- 在服务菜单中,选择“概述”。
- 在“Essentials”下,对于“主机名”,请选择“复制”图标以复制主机名值。 主机名值的形式为
<DNS name>.redis.cache.chinacloudapi.cn
。 - 对于“端口”,请选择“复制”图标以复制端口值。
使用 redis-cli 进行连接
在安装了 Redis 包的计算机上打开 shell 或终端。 如果使用 WSL,可以使用 Windows 终端打开 Linux 命令行。 在使用 redis-cli 进行连接之前,请检查:
- 是否需要 TLS 访问权限 - 默认情况下,Azure Cache for Redis 实例使用 TLS 加密进行连接。 每当在服务器端使用 TLS 时,都必须使用
--tls
选项启用 redis-cli 上的 TLS。 - 使用的端口 - 基本层、标准层和高级层缓存。但是,对于非 TLS 连接,请使用端口
6379
;对于 TLS 连接,请使用端口6380
。 - 缓存实例是否使用群集 - 如果采用使用群集的高级层缓存,请添加
-c
选项来确保可访问所有分片。
示例
使用以下命令通过 TLS 连接到基本层、标准层或高级层 Azure Cache for Redis 实例:
redis-cli -p 6380 -h yourcachename.redis.cache.chinacloudapi.cn -a YourAccessKey --tls
连接到不使用 TLS 的基本层、标准层或高级层 Azure Cache for Redis 实例:
redis-cli -p 6379 -h yourcachename.redis.cache.chinacloudapi.cn -a YourAccessKey
连接到使用 TLS 和群集的基本层、标准层或高级层 Azure Cache for Redis 实例:
redis-cli -p 6380 -h yourcachename.redis.cache.chinacloudapi.cn -a YourAccessKey --tls -c
测试连接
建立连接后,可以向 Azure Cache for Redis 实例发出命令。 测试连接的一种简单方法是使用 PING
命令。 此命令在控制台中返回 PONG
。
yourcachename.redis.cache.chinacloudapi.cn:6380> PING
PONG
还可以运行 SET
和 GET
等命令:
yourcachename.redis.cache.chinacloudapi.cn:6380> SET hello world
OK
yourcachename.redis.cache.chinacloudapi.cn:6380> GET hello
"world"
可以使用 redis-cli 连接到 Azure Cache for Redis 实例。
redis-cli 备选方法
虽然 redis-cli 是一种有用的工具,但可通过其他方式连接到缓存来进行故障排除或测试:
- Azure Cache for Redis 提供内置在 Azure 门户中的 Redis 控制台,你无需安装命令行工具即可发出命令。 Redis 控制台功能目前仅在基本层、标准层和高级层中可用。
- RedisInsight 是一种丰富的开源图形工具,用于发出 Redis 命令和查看 Redis 实例的内容。 它适用于 Azure Cache for Redis,在 Linux、Windows 和 macOS 上受支持。