pagevis
使用ASCII字符可视化数据库物理页面布局
概览
| ID | 扩展名 | Bin | Lib | Load | Create | Trust | Reloc | 模式 |
|---|---|---|---|---|---|---|---|---|
| 6860 | pagevis | 否 | 否 | 否 | 是 | 否 | 是 | - |
| 相关扩展 | pg_buffercache pageinspect toastinfo pg_visibility pg_freespacemap pgstattuple pgfincore pgcozy pg_prewarm |
|---|
版本
| 类型 | 仓库 | 版本 | PG 大版本 | 包名 | 依赖 |
|---|---|---|---|---|---|
| EXT | PIGSTY | 0.1 | 1817161514 | pagevis | - |
| RPM | PIGSTY | 0.1 | 1817161514 | pagevis_$v | - |
| DEB | PIGSTY | 0.1 | 1817161514 | postgresql-$v-pagevis | - |
构建
您可以使用 pig build 命令构建 pagevis 扩展的 RPM / DEB 包:
BASH
安装
您可以直接安装 pagevis 扩展包的预置二进制包,首先确保 PGDG 和 PIGSTY 仓库已经添加并启用:
BASH
使用 pig 或者是 apt/yum/dnf 安装扩展:
安装
BASH
pig
BASH
dnf
BASH
apt
BASH
创建扩展:
SQL
用法
pagevis 提供 PostgreSQL 数据库页面内容的 ASCII 图形化表示。它依赖 pageinspect 扩展。
函数
SQL
输出字符
| 字符 | 含义 |
|---|---|
P | 页头 |
U | 未使用的行指针 |
N | 正常行指针 |
R | 重定向行指针 |
D | 已死行指针 |
| (空格) | 空闲空间(“空洞”) |
[n] | 元组编号(叠加在元组头上) |
H | 元组头 |
# | 元组数据 |
- | 对当前事务不可见的元组(已死) |
. | 元组间填充 |
示例
SQL
页头(P)和行指针(N)出现在开头,空闲空间在中间,元组从页面末尾向前增长。当行指针和元组之间没有剩余空间时,页面就满了。
需要超级用户权限(使用 pageinspect 的 get_raw_page)。