[POSTGRE] pg_store_plans

반응형

# 리눅스

#. yum을 통해 Postgre를 설치했다면, Extention을 사용하기 위해서는 

yum install postgre16.1-contrib

source로 설치했으면 contrib이 디렉토리에 존재함



1. wget 으로 파일 다운로드

wget https://github.com/ossc-db/pg_store_plans/archive/refs/tags/1.8.tar.gz
*1.7 에러나서 안됨(왠지모름) - 
->pg_store_plans.c:57:31: fatal error: utils/queryjumble.h: 그런 파일이나 디렉터리가 없습니다
->#include "utils/queryjumble.h"

make && make install

 

2. 재기동, Parameter 수정 및 Extension 설치

1)  파라메터 확인
select name, setting, unit
from pg_catalog.pg_settings;

2) 설치된 extention 조회
select name, default_version, installed_version 
from  pg_available_extensions where name like '%store%';

3) pg_store_plans 설치
CREATE EXTENSION PG_STORE_PLANS ;

 

3. 저장된 실행계획 조회

* pg_stat_statments 와 조인해서 사용
 
\x on
Expanded dispay is on

SELECT s.queryid, s.query
   , p.planid
   , p.plan
   , p.calls AS "plan calls"
   , s.calls AS "stmt calls"
   , round(s.mean_exec_time::numeric/1000,2) AS avg_exec_sec
   , (s.shared_blks_hit + s.shared_blks_read) shared_blks_io
   , p.first_call, p.last_call
   FROM pg_stat_statements s, pg_store_plans p
   WHERE s.queryid = p.queryid;

 

4. 저장 계획 초기화

-- pg_store_plans 테이블 데이터 초기화
select pg_store_plans_reset();

 

5. Parameter 변경

*postgresql.conf  파일에 설정하면 됨
pg_store_plans.min_duration=1000

 

반응형

'Database > Postgre' 카테고리의 다른 글

[POSTGRE] pg_cron  (0) 2024.11.01
[POSTGRE] pg_bigm  (0) 2024.11.01
[POSTGRE] 패스워드 복잡성 설정  (0) 2024.07.30
[POSTGRE] HBA등 설정파일  (0) 2024.07.12
[POSTGRE] 수동 설치  (0) 2023.12.15