Category: PostgreSQL

PostgreSQL Localization

    PostgreSQL Localization 로케일 지원은 initdb를 이용해 클러스터를 구성하면 자동으로 초기화 됩니다. 특별히 옵션을 넣지 않으면 en_US.UTF8로 설정이 됩니다. LC_COLLATE String 정렬 순서 LC_CTYPE 문자 분류 (어떤글자인지, 대문자도 동일한지) LC_MESSAGES 메세지 언어 LC_MONETARY...

오픈소스 모니터링 툴 PMM2 (MySQL, MariaDB, PostgreSQL, Mongo)

  Percona Monitoring and Management 2 PMM은 Percona에서 프로메테우스와 그라파나를 이용해 무료로 배포하고 있는 모니터링 툴입니다. (https://www.percona.com/software/database-tools/percona-monitoring-and-management) 최근에 2버전으로 업데이트가 되면서 기존 1.7버전과는 많은 것이 바뀌었습니다. MariaDB의 Galera Cluster 모니터링 뿐만아니라, PostgreSQL 모니터링도 정식으로...

[Playbook] PostgreSQL 다중화 구성

  PostgreSQL 다중화 구성 미리 /etc/hosts 파일에 pgsql01,02,03의 ip를 넣어줬습니다. inventory [master] pgsql01 [slave] pgsql02 pgsql03 . . . [postgres:children] master slave ansible_user=root ansible_password=<mypassword> 10,11 버전 사용가능. (9.6 사용 불가) ansible-playbook -i inventory inst_psql.yml...

Sysbench : MariaDB, MySQL, PostgreSQL Benchmark Tool.

  Sysbench ? 시스템 성능을 측정할 수 있는 툴로, MySQL에서 내부 프로젝트로 만들다가 Lua 스크립트를 적용한 0.5 버전까지 나왔다가 오랜기간 개발이 중지 되었습니다. 2016년에 다시 개발이 시작되었고 현재 1.0 버전대 개발이 진행중입니다. 기존에는 소스코드를...

pg_trgm

  pg_trgm postgresql 추가모듈 중 pg_trgm을 이용하여 ‘%문자열%’ like 검색시 인덱스 스캔을 실행할 수 있습니다. (3글자 미만에 대한 패턴검색의 경우 인덱스 탐색비용이 급격히 증가, table full scan의 비용을 초과함.) pg_trgm 모듈은 유사한 문자열을 빠르게...

PostgreSQL과 MariaDB의 사이에서의 선택

  PostgreSQL과 MariaDB의 사이에서의 선택 클라우드가 대세가 되고, 오픈소스가 많은 영역에서 중요한 자리를 차지하게 됨에 따라서, 데이터베이스 영역 역시 오픈소스 DB가 많은 시장 점유율을 차지하고 있습니다. 여전히 성능과 안정성, 모든 부분에서 상용인 오라클이 가장...

Docker를 이용한 PostgreSQL 설치

    Docker를 이용해 PostgreSQL 설치   요즘은 도커를 이용해서 DB설치를 많이 합니다. 그런데 주의 사항은 대부분의 DB 제공자는 도커위에 DB운영을 추천하지는 않습니다. 도커로 DB를 운영하려면 신중히 고려한 후에 결정하셔야 합니다. 성능 문제나 도커와...

PostgreSQL Cache Hit Rate

  PostgreSQL의 Cache hit rate가 가지는 의미는 오라클과 비슷합니다. Shared buffer에 올라와 있는 데이터를 가져다 쓰는 비율을 나타내며, 90% 이상의 효율을 유지하는 것이 성능적인 부분에서 유리합니다.   PostgreSQL cache hit ratio 조회 select round(sum(blks_hit)*100/sum(blks_hit...

PGPOOL-II 를 이용한 PostgreSQL 클러스터링 구성

  PGPOOL-II 를 이용한 PostgreSQL 클러스터링 구성   PGPOOL-II ? Pgpool-II는 PostgreSQL 서버와 PostgreSQL 데이터베이스 클라이언트 사이에 위치하는 프록시 소프트웨어입니다. 다음 기능을 제공합니다. Connection Pooling Load Balancing Automated fail over Replication Limiting Exceeding Connections...

PostgreSQL Replication을 이용한 다중화 구성

  PostgreSQL Replication을 이용한 다중화 구성 PostgreSQL은 자체적으로 미러링을 해서 Slave를 만드는 다중화 구성 기능이 있습니다. Wal 파일을 이용해 실시간 스트리밍으로 Slave 노드에 데이터를 쌓아, 운영중인 Master 노드와 동일한 데이터를 보유하고, 장애시 Slave를 바로...

PostgreSQL 온라인 적용 가능 파라미터 확인

  PostgreSQL 온라인 적용 가능 파라미터 확인   PostgreSQL의 파라미터 (postgresql.conf) 중에 반드시 restart로 적용해야 하는 파라미터가 있는가 하면, reload만으로도 적용 가능한 파라미터가 있습니다. 만약 archive_command 파라미터의 restart, reload 여부를 알고 싶다면, select name,...

PostgreSQL 온라인 백업 스크립트

  PostgreSQL 온라인 백업용 스크립트 입니다. Crontab에 걸어서 사용하면 됩니다. 해당 스크립트는 PostgreSQL DB의 wal_level 이 logical or replica or hot_standby 일 경우에만 사용 가능합니다. pg_backup.sh ## PostgreSQL 백업 스크립트 ## 해당 스크립트는 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의 중심개념은 변경 내용을 설명하는 로그...