如何使用 Another Redis Desktop Manager (ARDM):详细介绍 – wiki基地


精通 Another Redis Desktop Manager (ARDM):从入门到高级操作的详细指南

Redis 作为一款高性能的键值对数据库,因其出色的速度和灵活性,在现代应用开发中扮演着越来越重要的角色。然而,与数据库交互,特别是进行数据查看、修改、删除以及执行各种命令时,命令行界面(CLI)虽然强大,但对于不熟悉命令或需要频繁可视化操作的用户来说,可能会显得不够直观和便捷。

这时,一款优秀的 Redis 图形用户界面(GUI) 工具就显得尤为重要。市面上有不少 Redis GUI 工具,而 Another Redis Desktop Manager (ARDM) 是其中备受推崇的一款。它是一款免费、开源、跨平台的 Redis 桌面管理工具,以其简洁的界面、丰富的功能和良好的用户体验赢得了广泛的认可。

本文将从零开始,详细介绍如何使用 ARDM,包括安装、连接、基本数据操作、高级功能以及一些使用技巧,帮助您充分利用 ARDM 提升 Redis 管理效率。

第一章:初识 ARDM – 为什么选择它?

在深入学习使用之前,我们先来了解一下 ARDM 的魅力所在:

  1. 跨平台支持: ARDM 支持 Windows、macOS 和 Linux 三大主流操作系统,无论您使用哪种开发环境,都能轻松安装使用。
  2. 简洁直观的界面: 相较于命令行,ARDM 提供了一个可视化的界面,让您可以像浏览文件一样查看数据库、键、以及键值。
  3. 丰富的功能: 除了基本的查看、增、删、改键值对,ARDM 还支持执行任意 Redis 命令、导入导出数据、通过 SSH Tunneling 连接远程服务器、支持 SSL/TLS 加密连接、支持 Redis Cluster 和 Sentinel 等。
  4. 开源免费: ARDM 是一个开源项目,您可以免费获取和使用它,并参与社区贡献。
  5. 良好的性能: 即使在处理包含大量键的数据库时,ARDM 通常也能保持流畅的操作体验。

如果您发现命令行操作 Redis 不够方便,或者希望有一个更直观的方式来探索和管理您的 Redis 实例,那么 ARDM 绝对是您的理想选择。

第二章:获取与安装 ARDM

开始使用 ARDM 的第一步是获取并安装它。由于 ARDM 支持多种平台,安装方式略有不同。

  1. 访问官方渠道: 推荐从 ARDM 的 GitHub 发布页 (https://github.com/qishibo/AnotherRedisDesktopManager/releases) 或官方网站(如果提供了)下载最新版本。这能确保您获得安全且最新的软件包。

  2. 选择适合您操作系统的版本:

    • Windows: 通常提供 .exe 安装包。下载后双击运行,按照安装向导提示完成安装即可。安装过程非常简单,可以选择安装路径和是否创建桌面快捷方式。
    • macOS: 通常提供 .dmg 镜像文件。下载后双击打开 .dmg 文件,将 ARDM 应用图标拖拽到“Applications”文件夹即可完成安装。之后可以在 Launchpad 或 Applications 文件夹中找到并运行 ARDM。macOS 用户也可以使用 Homebrew 进行安装:brew install another-redis-desktop-manager
    • Linux: 通常提供 .AppImage.deb.rpm 包。.AppImage 文件下载后赋予执行权限 (chmod +x filename.AppImage) 即可直接运行,无需安装。.deb 包适用于 Debian/Ubuntu 及其衍生版 (sudo dpkg -i filename.debsudo apt install ./filename.deb),.rpm 包适用于 Fedora/CentOS/RHEL 及其衍生版 (sudo rpm -i filename.rpm)。
  3. 启动 ARDM: 安装完成后,通过桌面快捷方式、应用程序列表或命令行启动 ARDM。首次启动时,您可能会看到一个空白的界面,提示您添加新的连接。

第三章:连接到 Redis 实例

ARDM 的核心功能是连接到 Redis 实例。ARDM 提供了灵活的连接选项,可以应对各种不同的部署场景。

  1. 打开“新连接”对话框: 启动 ARDM 后,通常会在界面左上角或通过菜单(如 File -> New Connection 或点击界面上的 “+” 按钮)找到“新连接”或“New Connection”按钮,点击它会弹出一个配置连接的对话框。

  2. 配置连接参数: 在弹出的“New Connection”对话框中,您需要填写以下信息:

    • Name (名称): 给这个连接起一个易于识别的名称,比如 “本地开发 Redis”, “生产环境 Redis – 主节点”, “测试集群” 等。这个名称只在 ARDM 中显示,方便您管理多个连接。
    • Host (主机): Redis 服务器的 IP 地址或域名。如果是本地开发,通常是 127.0.0.1localhost
    • Port (端口): Redis 服务器监听的端口,默认是 6379
    • Auth (密码): 如果您的 Redis 实例配置了密码认证(通过 requirepass 配置项),在此处输入密码。如果未设置密码,请留空。
    • Database (DB): 指定连接后默认选择的数据库索引。Redis 支持多达 16个数据库(db0 到 db15,可通过 databases 配置项调整),默认连接到 db0。您可以输入 0-15 之间的数字。如果不确定或想连接到默认数据库,可以留空(通常默认为 db0)。
    • TLS/SSL: 如果您的 Redis 服务器配置了 TLS/SSL 加密连接,请勾选此项。这要求 Redis 服务器和客户端(ARDM 运行的机器)都支持 TLS/SSL,并且 Redis 服务器已正确配置了证书。勾选后,ARDM 会尝试建立 SSL 加密连接。通常无需额外配置证书文件,ARDM 会使用系统信任的证书。
    • SSH Tunnel: 这是连接位于私有网络或防火墙后的 Redis 实例的常用方法。勾选此项后,会展开 SSH Tunnel 配置选项:
      • SSH Host: 提供 SSH 服务的中间跳板机的 IP 地址或域名。ARDM 会先通过 SSH 连接到这台机器。
      • SSH Port: SSH 服务的端口,默认为 22。
      • SSH User: 用于连接 SSH 跳板机的用户名。
      • SSH Password: SSH 用户的密码(如果使用密码认证)。
      • SSH Key File: SSH 私钥文件的路径(如果使用密钥对认证,更安全)。如果您使用密钥文件,通常不需要填写 SSH Password。
      • 工作原理: 当配置了 SSH Tunnel 后,ARDM 不会直接连接 Redis 的 Host:Port,而是连接 SSH Host:SSH Port,通过 SSH 连接在本地创建一个隧道,将对本地一个随机端口的访问转发到 SSH 服务器内部的 Redis Host:Port。ARDM 再通过这个本地隧道端口连接 Redis。这使得您可以安全地访问不对外开放的 Redis 实例。
    • Redis Cluster: 如果您要连接的是 Redis 集群,只需填写集群中任一节点的 Host 和 Port,然后勾选此项。ARDM 会自动发现集群中的所有节点并显示它们的拓扑结构。
    • Redis Sentinel: 如果您使用 Redis Sentinel 来管理高可用性,勾选此项。您需要填写 Sentinel 节点的 Host 和 Port,以及 Sentinel 配置中 sentinel monitor 指定的 Master Name。ARDM 会通过 Sentinel 发现当前活跃的主节点并进行连接。
  3. 测试连接: 在填写完连接信息后,强烈建议点击对话框底部的 “Test Connection” 按钮。ARDM 会尝试按照您配置的方式连接 Redis 实例,并报告连接是否成功。这可以帮助您在保存连接前排除配置错误(如IP地址、端口、密码错误或网络不通)。

  4. 保存连接: 测试连接成功后,点击 “Save” 或 “Connect” 按钮保存连接信息并连接到 Redis 实例。ARDM 会将该连接添加到左侧的服务器列表中。

第四章:认识 ARDM 的用户界面

成功连接到 Redis 实例后,ARDM 的主界面会呈现出来,它通常由以下几个主要区域组成:

  1. 服务器列表/导航面板 (左侧):

    • 这里列出了您添加的所有 Redis 连接,按照您给定的名称显示。
    • 对于 Redis Cluster 连接,会显示集群中的各个节点。
    • 点击一个连接名称,ARDM 会尝试连接或切换到该实例。
    • 连接成功后,该连接下方会展开,显示该 Redis 实例的所有数据库(db0, db1, …, dbN)。
  2. 数据库列表/键列表面板 (中央左侧):

    • 当您在左侧面板选择一个 Redis 实例后,这里会显示该实例的数据库列表 (db0, db1, etc.)。
    • 点击一个数据库(例如 db0),右侧面板会立即刷新,显示该数据库中的所有键。
    • 在这个面板的顶部通常有搜索框和刷新按钮,用于查找和更新当前数据库中的键列表。
  3. 键详细信息面板 (中央右侧):

    • 当您在数据库列表/键列表面板中选中一个键时,这个区域会显示该键的详细信息。
    • 显示的内容包括:键的名称、类型 (String, List, Hash, Set, Sorted Set, Stream 等)、TTL (Time To Live,剩余生存时间) 或过期时间、编码方式。
    • 最重要的是,这里会以易读的方式展示键的值。不同的数据类型有不同的展示方式:
      • String: 显示字符串内容。
      • List: 显示列表中的元素,通常带有索引。
      • Hash: 显示哈希中的字段和对应的值,以表格形式呈现。
      • Set: 显示集合中的所有成员,通常以列表形式。
      • Sorted Set: 显示有序集合中的成员及其分数 (score),通常以列表形式并按分数排序。
      • Stream: 显示 Stream 中的条目 (entry),每个条目有唯一的 ID 和一组字段-值对。ARDM 会以表格或列表形式展示 Stream 的内容。
    • 在这个面板,您通常可以进行编辑、删除键的操作。
  4. 控制台/终端面板 (底部):

    • 这是一个非常强大的区域,允许您直接向当前连接的 Redis 实例发送任意 Redis 命令。
    • 上方通常是命令输入框,下方是命令执行结果输出区域。
    • 您可以在这里执行 PING, INFO, CLIENT LIST, CONFIG GET *, FLUSHDB, FLUSHALL 等任何 Redis 命令。
    • 使用控制台需要谨慎,特别是执行写操作或管理命令时。

第五章:基本数据操作

ARDM 让 Redis 的数据操作变得异常简单。

  1. 浏览键:

    • 在左侧选择 Redis 实例和数据库。
    • 中央左侧的键列表面板会加载当前数据库的键。
    • 如果键很多,ARDM 会分页加载,滚动或点击加载更多。
    • 使用顶部的搜索框可以根据键名模式查找键(支持 * 通配符,但要注意在大数据集上使用 * 可能影响性能,ARDM 内部查询通常使用 SCAN 命令以避免阻塞)。
  2. 查看键详细信息:

    • 在键列表面板中点击任何一个键的名称。
    • 中央右侧的详细信息面板会立即更新,显示该键的类型、TTL和值。
    • ARDM 会根据键的类型智能地以最合适的方式展示值,例如表格、列表或文本框。
  3. 添加新键:

    • 在中央左侧的键列表面板顶部或右键菜单中,通常有 “Add Key” 或 “+” 按钮。点击它。
    • 弹出的对话框中,需要输入:
      • Key Name (键名): 新键的名称。
      • Key Type (键类型): 选择您想创建的键的类型(String, List, Hash, Set, Sorted Set, Stream)。
      • TTL (Optional) (生存时间,可选): 设置键的过期时间(秒)。输入 -1 表示永不过期。
    • 根据选择的类型,下方会出现对应的编辑区域,让您输入键的初始值(例如,String 的文本内容,Hash 的字段和值对,List 的元素等)。
    • 填写完毕后,点击保存即可创建新键。
  4. 编辑现有键:

    • 在键列表面板中选中要编辑的键。
    • 在中央右侧的详细信息面板中,您通常可以看到 “Edit” 或类似的按钮/图标,或者双击值区域进行编辑。
    • 编辑界面会根据键的类型有所不同。例如,编辑 String 类型键会提供一个文本框;编辑 Hash 类型键会提供一个表格,允许您添加、修改或删除字段-值对;编辑 List、Set、Sorted Set、Stream 等也提供相应的界面来管理元素或条目。
    • 修改完成后,点击保存按钮。
  5. 删除键:

    • 在键列表面板中选中一个或多个要删除的键。
    • 右键点击选中的键,或在面板顶部找到 “Delete” 或垃圾桶图标按钮。
    • 点击删除后,通常会出现一个确认对话框,防止误操作。
    • 确认后,选中的键将被删除。
    • 注意: 删除操作是不可逆的,请谨慎操作,特别是在生产环境中。ARDM 也可能支持通过键名模式进行批量删除,但同样需要非常小心。

第六章:高级功能探索

ARDM 不仅仅是一个基本的数据查看工具,它还提供了许多高级功能,极大地扩展了其可用性。

  1. 使用控制台执行 Redis 命令:

    • 底部区域是 ARDM 的控制台。这是一个强大的接口,允许您绕过图形界面,直接与 Redis 实例进行底层交互。
    • 在命令输入框中键入任何有效的 Redis 命令(例如 GET mykey, HGETALL myhash, SMEMBERS myset, LRANGE mylist 0 -1, INFO, CLIENT LIST, MONITOR 等)。
    • 按 Enter 键执行命令。
    • 执行结果会显示在下方的输出区域。ARDM 通常会格式化输出,使其更易读。
    • 控制台支持命令历史记录,您可以通过上下箭头键浏览之前执行的命令。
    • 重要提示: 在控制台执行 FLUSHDB (清空当前数据库) 或 FLUSHALL (清空所有数据库) 是非常危险的操作,会永久删除数据。执行前务必三思!KEYS * 命令在大数据集上可能会阻塞 Redis 服务器,在生产环境应尽量避免使用。
  2. 导入/导出数据:

    • ARDM 通常提供导入和导出 Redis 数据的功能。这对于数据迁移、备份或分析非常有用。
    • 查找菜单项或右键菜单中的 “Import” 或 “Export” 选项。
    • 导出: 您可以选择导出当前选定数据库的所有键,或者根据模式导出特定键。导出的格式可能包括:
      • Key Names List: 只导出键名列表。
      • JSON: 尝试将 Redis 数据结构转换为 JSON 格式(复杂结构可能转换不完全或需要特定处理)。
      • Redis Protocol/Commands: 导出为一系列 Redis 命令,可以在另一个 Redis 实例上执行来恢复数据(例如 SET key value, LPUSH list element, etc.)。这是最常见且可靠的备份和迁移格式。
    • 导入: 通常支持导入 Redis 命令文件。您可以将之前导出的 Redis Commands 文件导入到目标 Redis 实例中。导入过程会执行文件中的所有命令。
    • 导入/导出功能可能因 ARDM 版本而异,具体支持的格式和选项请参考您使用的版本。
  3. Pub/Sub 功能:

    • Redis 支持发布/订阅 (Pub/Sub) 消息模式。ARDM 通常提供一个界面来订阅频道并查看接收到的消息。
    • 查找相关的菜单项或图标,可能会在连接右键菜单中找到 “Subscribe” 或 “Pub/Sub”。
    • 输入您想订阅的频道名称,点击订阅。
    • ARDM 会打开一个新的面板,显示该频道接收到的所有消息。
    • 这对于调试或监控 Redis 消息流非常方便。
  4. 管理服务器配置 (通过控制台):

    • 虽然 ARDM 没有一个专门的配置管理界面,但您可以通过底部的控制台使用 CONFIG GETCONFIG SET 命令来查看和修改 Redis 服务器的运行时配置。
    • 例如:
      • CONFIG GET timeout: 查看连接超时时间。
      • CONFIG SET timeout 300: 将连接超时时间设置为 300 秒。
    • 警告: 修改 Redis 配置可能会影响服务器的稳定性和性能,请务必了解您修改的配置项的作用,并在非生产环境充分测试。
  5. Redis Cluster 和 Sentinel 支持的细节:

    • 当连接到 Redis Cluster 时,ARDM 会显示集群中所有主节点和从节点。您可以像操作单机实例一样查看和管理任意节点上的键(ARDM 会自动处理重定向)。这极大地简化了集群的管理和调试。
    • 连接到 Redis Sentinel 时,ARDM 会通过 Sentinel 自动发现当前的主节点,并连接到主节点进行数据操作。如果主节点发生故障切换,ARDM 可能会自动尝试重新连接新的主节点,从而提供对高可用架构的良好支持。
  6. 主题和偏好设置:

    • ARDM 通常提供一些基本的偏好设置,例如选择界面主题(亮色/暗色模式)、调整字体大小等,以提高用户体验。您可以在菜单栏的 “Preferences” 或 “Settings” 中找到这些选项。

第七章:使用技巧与最佳实践

为了更高效、更安全地使用 ARDM,以下是一些技巧和最佳实践:

  1. 使用连接分组: 如果您管理着大量的 Redis 实例(开发、测试、生产、不同项目等),可以利用 ARDM 可能提供的连接分组功能(某些版本或分支可能支持)来组织您的连接列表,使其更加整洁。
  2. 谨慎使用通配符搜索 (*): 虽然 ARDM 在内部浏览时使用 SCAN 命令来避免阻塞,但在控制台手动执行 KEYS * 仍然非常危险,尤其是在包含数百万甚至数十亿键的生产数据库上。它会遍历所有键并可能导致 Redis 长时间阻塞,影响线上服务。尽量使用 SCAN 命令(ARDM 控制台通常可以直接使用 SCAN 命令,例如 SCAN 0 MATCH pattern COUNT count)或 ARDM 界面提供的搜索框(它会使用 SCAN)。
  3. 小批量操作: 当需要删除大量键时,避免一次性选中所有键进行删除。如果可能,分批进行删除,或者编写脚本使用 SCANDEL 命令结合的方式。
  4. 理解 TTL: 在查看键详细信息时,注意观察键的 TTL。对于应该自动过期的键,检查它们的 TTL 是否符合预期。对于不应该过期的重要数据,确保其 TTL 为 -1 或很大。
  5. 安全连接:
    • 优先使用密码认证 (requirepass) 保护您的 Redis 实例。
    • 对于远程连接,如果 Redis 实例直接暴露在公网,这非常危险。强烈建议使用 SSH Tunneling 或配置 TLS/SSL 加密来保护连接。SSH Tunneling 是一种更常见且易于设置的安全方式,尤其是在通过跳板机访问内网资源时。
    • 限制 Redis 监听的 IP 地址,只允许来自信任源的连接(通过配置 bind)。
  6. 利用控制台进行诊断: 当 Redis 出现问题时,ARDM 的控制台是进行初步诊断的好工具。可以使用 INFO 命令查看服务器状态、内存使用、命中/未命中率等关键指标;使用 CLIENT LIST 查看当前连接的客户端;使用 SLOWLOG GET 查看慢查询日志。
  7. 定期刷新: 在进行了一系列操作后,或者怀疑数据显示不是最新的时,点击刷新按钮(通常在键列表面板顶部)可以确保您看到的是 Redis 实例的最新状态。
  8. 注意数据类型: Redis 的不同数据类型有不同的使用场景和操作命令。在使用 ARDM 添加或编辑键时,确保选择正确的数据类型,并以该类型期望的格式输入值。
  9. 备份重要数据: 在进行可能破坏性操作(如批量删除、导入等)之前,考虑先使用 ARDM 的导出功能备份相关数据,以便在出现问题时进行恢复。

第八章:常见问题与故障排除

使用 ARDM 时可能会遇到一些问题,以下是一些常见问题及其排查思路:

  1. 无法连接到 Redis 实例:

    • 检查 Host 和 Port: 确保输入的 IP 地址和端口号正确无误。
    • 检查 Redis 服务器状态: 确认目标 Redis 实例正在运行并且可以从 ARDM 所在的机器访问。可以尝试使用 ping 命令测试网络连通性。
    • 检查防火墙: 确认客户端机器和服务器之间的网络防火墙没有阻止对 Redis 端口(默认为 6379)的访问。
    • 检查 Redis 配置: 确认 Redis 配置文件中的 bind 项允许 ARDM 所在的 IP 地址连接。确认 protected-mode 没有阻止外部连接(生产环境应开启 protected-mode,并配合 bind 或其他安全措施)。
    • 检查密码: 如果 Redis 设置了密码,确认在 ARDM 连接配置中输入了正确的密码。
    • 检查 SSH Tunnel: 如果使用了 SSH Tunnel,确认 SSH 连接信息(Host, Port, User, Password/Key File)正确,并且 SSH 服务正在运行且允许端口转发。
    • 检查 SSL/TLS: 如果使用了 SSL/TLS,确认 Redis 服务器已正确配置 SSL,并且客户端(ARDM)支持并尝试使用 SSL 连接。
  2. 连接成功但看不到键或数据不完整:

    • 检查选择的数据库: 确认您选择了正确的数据库 (db0, db1 等)。数据可能存储在不同的数据库中。
    • 检查搜索/过滤条件: 确认您没有设置了限制性的搜索或过滤条件,导致部分键被隐藏。
    • 刷新: 点击刷新按钮确保加载最新数据。
    • 键数量过多: 如果数据库包含非常多的键,加载所有键可能需要时间,或者 ARDM 分页加载,您需要滚动才能看到更多。
  3. 执行命令失败:

    • 检查命令语法: 确认您在控制台输入的 Redis 命令语法正确。
    • 检查权限: 如果使用了 Redis ACL (Access Control List),确认连接用户有执行该命令的权限。
    • 命令适用性: 确认您执行的命令适用于当前连接的 Redis 版本和配置(例如,某些命令只在集群模式下可用)。
  4. ARDM 界面卡顿或响应缓慢:

    • 数据库键数量过多: 如果当前数据库包含海量键,加载和显示它们可能会消耗大量资源。尝试切换到键较少的数据库,或优化键名模式搜索以减少显示数量。
    • 网络延迟: 如果连接的是远程 Redis 实例,高网络延迟会影响界面的响应速度。
    • 执行耗时命令: 在控制台执行了 KEYS * 或其他耗时命令可能会导致界面短暂无响应。
    • ARDM 版本问题: 尝试更新到最新版本的 ARDM,可能包含性能优化。
  5. SSH Tunnel 连接失败:

    • 检查 SSH 服务状态: 确认 SSH 跳板机上的 SSH 服务正在运行。
    • 检查 SSH 认证: 确认 SSH 用户名、密码或密钥文件正确且有效。尝试使用标准的 SSH 客户端连接跳板机,看是否能成功。
    • 检查 SSH 配置: 确认 SSH 服务器允许密码认证或公钥认证,并且允许端口转发(AllowTcpForwarding yes)。
    • 检查防火墙: 确认客户端到 SSH 跳板机之间的网络防火墙允许 SSH 端口(默认为 22)的流量。确认 SSH 跳板机到 Redis 服务器之间的网络是连通的,并且跳板机可以访问 Redis 的端口。

结论

Another Redis Desktop Manager (ARDM) 是一款功能强大且易于使用的 Redis GUI 工具。通过本文的详细介绍,您应该已经掌握了如何安装、连接、进行基本数据操作以及利用其高级功能。

无论是日常的开发调试、数据查看,还是进行数据迁移、简单的性能诊断,ARDM 都能提供极大的便利。熟练掌握 ARDM 的使用,将显著提升您与 Redis 交互的效率。记住在使用过程中,特别是处理生产环境数据时,始终保持谨慎,遵循安全实践,避免误操作带来的损失。

希望这篇详细指南对您有所帮助!开始您的 ARDM 之旅吧!


发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部