티스토리 뷰

개발/Database

Postgresql명령어 모음

KyeongRok Kim 2021. 11. 29. 13:49

Replication

기존 master와 slave로 쓰던 것을 Postgres에서는 Primary, Standby로 씁니다.

 

Docker로 Postgres 띄우기

docker run --name postgres-container -d --restart unless-stopped   -p 5432:5432 -e POSTGRES_PASSWORD=123456 -v /postgre_data:/var/lib/postgresql/data postgres:13.3

 

 

테이블 목록 조회

mysql의 show tables와 같습니다.

SELECT table_name, table_schema, table_type
FROM information_schema.tables
WHERE table_schema IN ('public');

 

Slow Query찾기

select query, mean_exec_time, max_exec_time, min_exec_time, rows
from public.pg_stat_statements
order by mean_exec_time desc;

 

통계 테이블 조회

select *
from public.pg_stat_statements
limit 100;

 

백업 하기

pg_basebackup -D /var/lib/postgresql/backup <<- 백업하고자 하는 폴더 명

ex)

pg_basebackup -D /var/lib/postgresql/13/main.backup

 

 

postgres db상태 확인

systemctl status postgresql@13-main.service

 

db설정 확인

vim /etc/postgresql/13/main/postgresql.conf

 

pgpool config확인

vi /usr/local/etc/pgpool.conf

 

pgpool 로그 확인

/var/log/pgpool 에서 확인

 

pool hba확인

vi /usr/local/etc/pool_hba.conf

 

pgpool개수 확인

ps -ef | grep pgpool | wc -l

 

pgpool내리기

killall -9 pgpool


pgpool켜기

sh ~/pgpool_start.sh

 

DB내리기

su - postgres
/usr/lib/postgresql/13/bin/pg_ctl -D /ssd/postgres/13/main -m immediate stop

 

replica되었는지 확인

psql -h <pgpool_ip> -p 9999 -U postgres -c "show pool_nodes"

 

replica되었는지 확인 2

pg_lsclusters

 

archieve디렉토리

/var/lib/pgsql/archivedir

 

대상 파일 확인

12월 3일에 생성한 파일 모두 확인

ll --time-style full-iso | awk '{print $6" "$9}' | grep 2021-12-03

 

대상파일 삭제

12월 3일에 생성한 파일 모두 삭제

ll --time-style full-iso | awk '{print $6" "$9}' | grep 2021-12-03 | xargs rm -f

 

 

백업파일 저장되는 곳

/var/lib/postgresql/13

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/02   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29
글 보관함