跳转到内容

浏览你的数据

浏览是 只读 的,需要在资源上拥有 Viewer 角色。它绝不会改动数据 — 它只发起目录读取以及 SELECT/find/SCAN 读取。

SQL 引擎(PostgreSQL、MySQL/MariaDB)

Section titled “SQL 引擎(PostgreSQL、MySQL/MariaDB)”

浏览器首先列出凭据能看到的 数据库,然后是所选数据库内部的 模式表/视图。视图会与表分开标记。对于 MySQL/MariaDB — 其中一个数据库 就是 一个模式 — 该树被限定在已连接的数据库范围内。

从面板顶部的选择器中挑选另一个数据库,即可重新限定该树的范围。

选择一张表即可查看其 结构,结构读取自 information_schema(索引则读取自 pg_indexes / information_schema.statistics):

  • — 名称、数据类型、是否可空,以及默认值。
  • 主键 — 主键列会被标记出来。
  • 索引 — 索引名称及其定义(Postgres)或列清单(MySQL)。

数据 视图会逐页浏览表中的行。分页默认为 每页 50 行(可在 1 到 200 之间配置),并显示 总行数,让你知道这张表有多大。每个值都以文本形式渲染,因此任何列类型都能在网格中干净地显示。

列名始终来自目录,并且在构建任何查询之前都会验证 (schema, table) 这一对是否存在 — 所以浏览功能无法被用来注入任意标识符。

MongoDB 浏览器沿用相同形状的树,只是为文档多深入了一层:

  • 数据库 — 来自 listDatabases
  • 集合 — 来自所选数据库上的 getCollectionNames()
  • 文档find().skip().limit(),默认每页 20 个文档(1–100),外加一个 countDocuments 总数。文档以 EJSON 渲染,因此 MongoDB 类型(ObjectIdDateDecimal128、……)能在往返过程中保留下来,而不会被扁平化为普通 JSON。

Redis 浏览以键为中心:

  • 键列表 — 使用 SCAN 构建(基于游标,每批 200 个键),并可选地附带一个 MATCH 模式(默认为 *)。使用 Load more 来推进游标。
  • 每个键的类型 — 每个键都会显示其类型(stringlistsetzsethashstream)。
  • 值视图 — 选择一个键会用与其类型相应的命令来获取其值:
    • stringGET
    • listLRANGE 0 500
    • setSMEMBERS
    • zsetZRANGE 0 500 WITHSCORES
    • hashHGETALL
    • streamXRANGE - + COUNT 100
  • TTL — 该键剩余的生存时间会与值一同显示。
  • 数据库索引 — 从选择器中在 Redis 逻辑数据库 0–15 之间切换。