Redis 数据管理
Redis 数据管理页面让你在线浏览和编辑 Redis 键:选择数据库、列出并搜索键、查看/创建/更新/删除键、设置键的 TTL,以及清空整个数据库。
TIP
此功能在 v3.1.0 新增。
前置条件
Redis 数据管理针对类型为 Redis 的数据库服务器进行操作。 使用前,请确保在 数据库 > 服务器 标签页中有可用的 Redis 服务器:
- 安装本地 Redis(或 Valkey)应用后,AcePanel 会自动添加一个内置的本地服务器(
local_redis/local_valkey)。 - 对于远程 Redis 实例,请在 服务器 标签页中添加。 Redis 服务器不使用用户名;只需要地址、端口和密码。
打开页面
进入 数据库 页面并切换到 Redis 标签页。 与关系型数据库标签页不同,Redis 完全从这个数据视图管理,而不是从数据库列表管理。
选择服务器和数据库
页面顶部有两个选择器:
- 服务器:选择要操作的 Redis 服务器。 每个选项显示为
name (host:port)。 会自动选中第一个可用的服务器。 - 数据库:选择要浏览的逻辑数据库,显示为
DB0、DB1等。 数据库的数量读取自服务器的databases配置(默认 16),因此列表通常从DB0到DB15。
切换服务器会将选择重置回 DB0 并重新加载键列表。
键列表
所选数据库的键列表以分页表格显示,包含以下列:
- 键:键名。
- 类型:Redis 数据类型,显示为彩色标签——
string、list、set、hash或zset之一。 - TTL:剩余存活时间。
Permanent—— 键永不过期(TTL 为-1)。Expired—— 键已不存在(TTL 为-2)。- 否则显示剩余秒数,例如
120s。
- 大小:键占用的近似内存,由 Redis
MEMORY USAGE报告,并以人类可读的单位(如 KB 或 MB)显示。 - 操作:每个键的 查看、TTL、重命名 和 删除 按钮。
分页支持每页 20、50、100 和 200 个键(默认 20)。
TIP
键通过 Redis SCAN 命令枚举,在生产实例上运行是安全的,不会阻塞服务器。
搜索键
使用搜索框(占位符 user:*)按 glob 风格的模式过滤键,然后点击 搜索 或按 Enter。 模式遵循 Redis MATCH 语法,例如:
user:*—— 所有以user:开头的键session:??——session:后跟恰好两个字符- 留空则列出所有键(等同于
*)。
查看键
点击某一行的 查看 打开键详情对话框。 对话框显示:
- 类型:键的数据类型(只读)。
- 键:键名(只读)。
- 值:键的值。
- TTL:剩余存活时间。
值根据类型以文本形式渲染:
- string —— 原始字符串值。
- list / set —— 元素的 JSON 数组。
- hash —— 字段/值对的 JSON 对象。
- zset —— 成员/分数对的 JSON 对象。
注意
对于非常大的值(元素超过 5000 个的集合,或长度超过 5000 个字符的字符串),不会加载该值,并显示为 data is too long, can't display,以避免将巨大的负载拉取到浏览器中。
创建或更新键
点击 创建键 打开键编辑器。 填写表单并点击 提交:
- 类型:选择
String、List、Set、ZSet或Hash之一。 - 键:键名。 设置一个已存在的键名会覆盖该键。
- 值:要存储的值。 预期格式取决于类型:
- String —— 纯文本。
- List / Set —— JSON 数组,例如
["a", "b", "c"]。 - ZSet —— 将成员映射到分数的 JSON 对象,例如
{"alice": "10", "bob": "20"}。 - Hash —— 将字段映射到值的 JSON 对象,例如
{"name": "alice", "age": "20"}。
- TTL:过期时间(秒)。 使用
-1(或任何不大于 0 的值)表示不过期;正值则将键设置为在那么多秒后过期。
值是必填的,且类型必须是五种受支持类型之一。
注意
当你保存非字符串键(list、set、zset 或 hash)时,会先删除同名的现有键,然后根据你提供的值重新构建。 因此保存操作会替换整个集合,而不是追加到其中。
TIP
查看 对话框是只读的——类型和键字段被禁用,且那里没有保存操作。 要更改值,请使用 创建键 并输入相同的键名来覆盖它。
设置键的 TTL
点击某一行的 TTL 打开 TTL 对话框。 键名以只读方式显示;输入新的 TTL(秒)并点击 提交:
- 值为
-1会移除过期时间并使键变为永久(RedisPERSIST)。 - 正值会将键设置为在那么多秒后过期(Redis
EXPIRE)。
最小可接受值为 -1。
重命名键
点击某一行的 重命名 来更改键名。 当前名称以只读方式显示;输入新名称并点击 提交(Redis RENAME)。
注意
如果新名称的键已存在,它会被覆盖。
删除键
点击某一行的 删除 并确认,即可从当前数据库中移除单个键。
清空数据库
点击 清空数据库 移除当前所选数据库中的所有键(Redis FLUSHDB)。 运行前需要确认。
警告
清空数据库会永久删除所选数据库中的每一个键。 此操作无法撤销! 请确保你已选择正确的数据库,并事先备份了所有重要数据。
常见问题
无法连接到 Redis 服务器
- 确认所选服务器的类型为 Redis,且其主机、端口和密码正确。
- 确认 Redis 服务正在运行,并且可以从面板主机访问。
- 在 数据库 > 服务器 标签页中检查服务器状态。
保存非字符串键失败
- 对于 list 和 set 类型,值必须是有效的 JSON 数组。
- 对于 zset,值必须是
{member: score}对的 JSON 对象。 - 对于 hash,值必须是字段/值对的 JSON 对象。
键显示为已过期
TTL 为 Expired 表示键已经过期,在 Redis 中不再存在。 刷新列表即可将其从视图中移除。
