gpt4 book ai didi

postgresql - 检查表和索引的填充因子设置

转载 作者:行者123 更新时间:2023-11-29 11:37:53 25 4
gpt4 key购买 nike

也许有一些函数可以检查索引和表的填充因子?我已经尝试过\d+ 但只有基本定义,没有 fillfactor 值:

        Index "public.tab1_pkey"
Column | Type | Definition | Storage
--------+--------+------------+---------
id | bigint | id | plain
primary key, btree, for table "public.tab1"

对于表还没有找到任何东西。如果表是使用非默认填充因子创建的:

CREATE TABLE distributors (
did integer,
name varchar(40),
UNIQUE(name) WITH (fillfactor=70)
)
WITH (fillfactor=70);

然后 \d+ distributors 显示非标准 fillfactor。

                            Table "public.distributors"                                                                                                                                        
Column | Type | Modifiers | Storage | Stats target | Description
--------+-----------------------+-----------+----------+--------------+-------------
did | integer | | plain | |
name | character varying(40) | | extended | |
Indexes:
"distributors_name_key" UNIQUE CONSTRAINT, btree (name) WITH (fillfactor=70)
Has OIDs: no
Options: fillfactor=70

但也许有一种方法可以在不解析输出的情况下获取这个值?

最佳答案

需要查询pg_class系统表:

select t.relname as table_name, 
t.reloptions
from pg_class t
join pg_namespace n on n.oid = t.relnamespace
where t.relname in ('tab11_pkey', 'tab1')
and n.nspname = 'public'

reloptions 是一个数组,每个元素包含一个 option=value 定义。但对于具有默认选项的关系,它将为空。

关于postgresql - 检查表和索引的填充因子设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23243446/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com