트랜잭션의 격리 수준

In 데이터베이스 시스템 by Choi Kyung-sikLeave a Comment

트랜잭션의 격리 수준을 이해하기 위한 배경 지식으로 트랜잭션, 고립성, 이상현상을 먼저 살펴본다. 트랜잭션의 개요 데이터베이스의 여러 연산을 묶어 놓은 것을 사용자의 관점에서는 하나의 단위로 여겨질 수 있다. 예를 들어, 다른 계좌로 돈을 이체하는 것은 사용자의 관점에서 하나의 작업이지만, 데이터베이스 시스템 내에서는 여러 연산을 결합한 것이다. 이처럼, 하나의 논리적인 작업 단위를 위한 연산들의 모음을 트랜잭션(transaction)이라 한다. 데이터의 무결성(integrity)을 보장하려면, 데이터베이스 시스템은 …

데비안의 MariaDB 설치와 설정

In 네트워크와 시스템 관리, 데이터베이스 시스템 by Choi Kyung-sikLeave a Comment

데비안 9(Stretch)부터 MariaDB는 디폴트 MySQL 변종이다. 즉, MariaDB가 기존의 MySQL을 완전히 대체한다. 데비안 8(Jessie)의 MySQL 버전은 5.5이다. 내가 사용하는 Confluence 등이 MySQL 5.5를 지원하지 않았기 때문에 MySQL Community의 MySQL 5.6을 설치해야 했다. 최근에 Confluence, Jira, Bitbucket의 MySQL 데이터베이스를 PostgreSQL로 이전하였다. 워드프레스의 데이터베이스만이 MySQL에 남았다. 워드프레스는 현재 공식적으로 MySQL과 MariaDB만을 지원한다. 정교한 데비안 패키지 관리의 이점을 얻기 위해 MariaDB로 돌아갈 것이다. …

Confluence 서버의 MySQL을 PostgreSQL로 마이그레이션 하기

In 네트워크와 시스템 관리, 데이터베이스 시스템 by Choi Kyung-sikLeave a Comment

데비안 시스템의 Confluence 서버에서 MySQL을 PostgreSQL로 마이그레이션 한 과정을 보여주려고 한다. 내가 사용하는 데비안 9(stretch)의 PostgreSQL 버전은 9.6이다. Confluence는 버전 6.13.8을 설치하고 있다. 먼저 이 버전의 Confluence에서 지원하는 데이터베이스를 볼 필요가 있다. Supported Platforms – Confluence 6.13을 보면 PostgreSQL 9.4, 9.5, 9.6을 지원하므로 마이그레이션을 진행할 수 있다. 작업을 진행하기 전에 MySQL의 데이터베이스와 Confluence 홈 디렉토리를 백업한다. 뒤에서 서술할 내용에서 Confluence의 …

Jira 서버의 MySQL을 PostgreSQL로 마이그레이션 하기

In 네트워크와 시스템 관리, 데이터베이스 시스템 by Choi Kyung-sikLeave a Comment

Jira 서버의 MySQL을 PostgreSQL로 마이그레이션 한 작업 과정을 정리해 본다. 내가 사용하는 데비안 9(stretch)의 PostgreSQL 버전은 9.6이다. Jira 서버는 버전 7.13.0을 설치하고 있다. 먼저 이 버전의 Jira에서 지원하는 데이터베이스를 봐야 한다. Supported platforms – Jira Server 7.13을 보면 PostgreSQL 9.4, 9.5, 9.6을 지원하므로 마이그레이션을 진행할 수 있다. 아래에서 내가 사용하는 Jira 홈 디렉토리인 /var/local/lib/jira로 예를 들 것이다. 단계 1. XML …

Bitbucket 서버의 MySQL을 PostgreSQL로 마이그레이션 하기

In 네트워크와 시스템 관리, 데이터베이스 시스템 by Choi Kyung-sikLeave a Comment

데비안 시스템의 Bitbucket에서 MySQL을 PostgreSQL로 옮겼던 과정을 보여주려고 한다. 내가 사용하는 데비안 9(stretch)의 PostgreSQL 버전은 9.6이다. Bitbucket은 버전 7.2.3을 설치하고 있다. 먼저 이 버전의 Bitbucket에서 지원하는 데이터베이스를 볼 필요가 있다. Supported platforms – Bitbucket Server 7.2.x를 보면 PostgreSQL 9.4에서 11까지 지원하므로 마이그레이션을 진행할 수 있다. 작업을 진행하기 전에 기존의 MySQL의 데이터베이스와 Bitbucket 홈 디렉토리를 백업한다. 뒤에서 홈 디렉토리는 내가 사용하는 …

PostgreSQL의 데이터베이스와 사용자 생성, 백업 및 복구

In 네트워크와 시스템 관리, 데이터베이스 시스템 by Choi Kyung-sikLeave a Comment

PostgreSQL의 설치와 설정, 간단한 튜닝에 대해 데비안의 PostgreSQL 설치와 설정에서 다루었다. 이 페이지에서는 PostgreSQL의 실제적인 사용인 데이터베이스와 사용자 생성, 백업 및 복구에 대해 살펴본다. 데이터베이스와 사용자 생성 PostgreSQL은 데이터베이스와 사용자 생성을 위한 createdb, createuser 명령어를 제공한다. 여기서는 SQL문을 사용하여 데이터베이스와 사용자를 생성하는 방법을 볼 것이다. 먼저 사용자 생성을 보자. PostgreSQL은 데이터베이스에 대한 접근 권한을 롤(role) 개념으로 다룬다. 롤은 어떻게 설정하느냐에 …

데비안의 PostgreSQL 설치와 설정

In 네트워크와 시스템 관리, 데이터베이스 시스템 by Choi Kyung-sikLeave a Comment

내가 사용하고 있는 Confluence, Jira, Bitbucket의 MySQL을 PostgreSQL로 변경하기로 마음먹고 학습을 진행했다. 그간에 얻은 PostgreSQL의 설치, 설정, 튜닝, 데이터베이스와 사용자 생성, 백업 및 복구 등을 전반적으로 정리해 본다. 이 페이지에서는 설치, 설정, 튜닝에 대해서 다룬다. 나머지 내용은 PostgreSQL의 데이터베이스와 사용자 생성, 백업 및 복구로 이어진다. PostgreSQL을 처음 접하는 분들에게 도움이 되었으면 한다. PostgreSQL 설치 PostgreSQL의 라이센스는 자유를 추구하는 데비안과 잘 …