Tagged: PostgreSQL

Docker를 이용해 PostgreSQL 설치

  Docker를 이용해 PostgreSQL 설치 도커가 설치 되어 있는 상태에서 아래의 명령으로 설치 해줍니다. 우선 컨테이너를 PostgreSQL 공식 도커 허브에서 내려 받습니다. $ docker pull postgres:9.6.11 그리고 도커를 실행 해줍니다. $ docker run -e...

PostgreSQL 아카이브 모드

  PostgreSQL 아카이브 모드 (Archive Mode) – PostgreSQL에서 아카이브 모드를 이해하기전에 WAL을 자세히 알고 넘어가야 할 필요가 있습니다. – WAL (Write-Ahead Logging)은 데이터 무결성을 보장하는 표준 방법입니다. – WAL의 중심개념은 변경 내용을 설명하는 로그...

MySQL, MariaDB 오픈소스 모니터링 툴

  Percona PMM server 페르코나는 MySQL 개발 하던 사람들이 나와서 MySQL 관련 컨설팅을 하면서 MySQL 강화 버전인 Percona-Server를 제공하는 회사입니다. Percona-server는 xtraDB 라는 InnoDB 강화 버전의 엔진을 탑재한 MySQL 기반의 DB입니다. Precona에서는 MySQL이나 MariaDB에서...

pg_stat_statements

  pg_stat_statements 란? pg_stat_statements 모듈은 서버에서 실행 되었던 쿼리들에 대한 실행 통계 정보를 보여줍니다. pg_stat_statements 모듈이 로드되면, 이 때부터 해당 서버의 모든 데이터베이스에서 일어나는 쿼리 통계가 수집됩니다. 하지만, 이 통계를 보는 pg_stat_statements view, 통계를...

PostgreSQL 테이블스페이스 및 오브젝트 사용량 확인

  PostgreSQL 테이블스페이스 및 오브젝트 사용량 확인   테이블스페이스 총량 postgres=# select spcname, pg_size_pretty(pg_tablespace_size(spcname)) from pg_tablespace; Table Size (Index 미포함) postgres=# select pg_relation_size(‘TableName’); Table Size (Index 포함) postgres=# select pg_total_relation_size(‘TableName’); Index size postgres=# select pg_relation_size(‘IndexName’); Total Size...

PostgreSQL 시간 조회

  현재 시간 조회  postgres=# select now(); 현재 타임존 조회 postgres=# show timezone; 타임존 변경 방법  postgres=# SET TIME ZONE ‘Asia/Seoul’; 시스템 일자 postgres=# select current_date, current_time, timeofday();  postgres=# select now(), current_timestamp, timestamp ‘now’;...

Docker를 이용해 PostgreSQL 설치

Docker를 이용해 PostgreSQL 설치   도커가 설치 되어 있는 상태에서 아래의 명령으로 설치 해줍니다. 우선 컨테이너를 PostgreSQL 공식 도커 허브에서 내려 받습니다. # docker pull postgres:9.6.11 그리고 도커를 실행 해줍니다. # docker run \...

PostgreSQL 커널 리소스 관리

공유 메모리 및 세마포어 공유 메모리 및 세마포어는 통칭 “System V IPC”라고 합니다. 윈도우 외에, PostgreSQL이 이러한 기능에 대한 자체적인 구현을 제공하는 경우 PostgreSQL을 실행하기 위해 이러한 기능이 요구됩니다. PostgreSQL은 서버 사본별로 System V...

PostgreSQL 권한 부여 및 해제

Grant & Revoke Grant – user,group 혹은 모든 user들에게 해당 객체에 대한 사용권한을 승인합니다. Synopsis : GRANT privilege [,…] ON object [,…] TO { PUBLIC | GROUP group | username} privilege SELECT : 특정...

PostgreSQL 유저 생성

유저 생성 DATABASE에서 USER는 DATABASE를 사용하는 주체로서 OS를 운영하는 USER와는 분리되어 있습니다. USER는 소유하고 있는 DATABASE안에 있는 OBJECT의 권한을 변경하고 제어할 수 있습니다. 유저를 생성하기 위해서는 먼저 DATABASE에서 SUPERUSER권한을 가지고 있어야 합니다. PostgreSQL에 SUPERUSER의...

PostgreSQL 스키마

SCHEMA 생성 SCHEMA는 Object들의 논리적 집합체 입니다. TABLE, VIEW, SEQUENCE, SYNONYM, DOMIAN, FUNCTION 등으로 구성되어 있습니다. SCHEMA를 사용하는 이유는 논리적 집합체를 만들어서 관리의 편의성을 높이고, 여러 USER들 간의 간섭 없이 접속 할 수 있게...

PostgreSQL Tablespace 생성

Tablespace 데이터베이스에서 Tablespace는 오라클과 PostgreSQL에서만 존재하는 개념입니다. 테이블스페이스가 존재 함으로 각 schema의 오브젝트 관리가 용이해지며, 데이터파일 관리 및 용량 관리에 있어서, 또는 성능 관리에 있어서 효과적인 관리가 가능해 집니다.   테이블 스페이스 확인 postgres=#...

PostgreSQL DB 생성 및 삭제

PostgreSQL을 관리하거나 운영하는 방법은 크게 두가지로 분류 할 수 있습니다. – 터미널을 이용한 커맨드라인 사용 – pgadmin을 이용한 GUI 사용 DB생성 Synopsis : CREATE DATABASE name [ [ WITH ] [ OWNER [=] user_name...

CentOS 7 에서 방화벽에 PostgreSQL 리스너 포트 등록하기

접근제어 PostgreSQL은 pg_hba.conf를 통해 접근제어를 할 수 있으나, 성능상의 이슈로 인해 OS단이나 방화벽 장비, 보안장비에서 제어하는 것을 추천 한다고 했습니다. CentOS 7 에서는 새로나온 Firewalld 와 기존의 iptables 모두 사용 가능 합니다. firewalld 의...