오랜만에 개인 공부 블로그를 작성하면서 초심으로 돌아가기 위하여 현업에서 주로 사용하는 데이터베이스들을 다뤄보기로 하겠습니다.
PostgreSQL은 안정성, 유연성, 개방형 기술 표준 지원으로 잘 알려져 있는 오픈 소스 데이터 베이스이다. 다른 RDBMS(관계형 데이터베이스 관리 시스템)와는 달리 비관계형 및 관계형 데이터 유형을 모두 지원한다.
최신 기술의 등장 속도를 생각했을 때 동적 데이터베이스 시스템을 유지하는 것이 매우 중요하게 되었다. 그래서 PostgreSQL은 확장 가능하고 다양한 기능을 제공하여 시계열 데이터 유형부터 Geospatial Analytics까지 다양하고 광범위한 확장 에코시스템을 가지고 다양한 특수 사용 사례를 신속하게 지원할 수 있는 장점이 있다.
다양한 기능과 쉬운 접근성을 가졌기 때문에 PostgreSQL은 데이터베이스 관리 시스템을 개선하기 위한 비용을 절감할 수 있고 효율적인 방법을 찾는 기업에게 좋은 오픈 소스 데이터베이스 솔루션으로 구축되었습니다.
데이터 인증 및 읽기/쓰기 속도가 필수적인 대규모 데이터 베이스 시스템에서 PostgreSQL을 능가하는 것이 어렵습니다. 지형 공간 지원 및 무제한 동시성과 같이 일반적으로 독점적인 데이터베이스 기술에서만 확인할 수 있는 다양한 성능 최적화를 지원하여 광범위한 데이터 분석에 효율적이다.
여러 사용자가 동시에 데이터에 액세스하는 경우, 기존의 데이터베이스 시스템은 일반적으로 읽기/쓰기 충돌을 방지하기 위해 레코드에 대한 액세스를 차단하지만, PostgreSQL은 MVCC(Multiversion Concurrency Control)을 사용하여 동시성을 효율적으로 관리합니다. 실제로는 읽기가 쓰기를 차단하지 않고, 쓰기가 읽기를 차단하지 않는다.
여러 프로그래밍 언어의 호환성과 지원으로 개발자를 위한 가장 유연한 데이터베이스 중 하나가 PostgreSQL입니다. C/C++, Ruby 등 일반적인 코딩언어는 PostgreSQL에 대한 성숙한 지원을 제공하므로 개발자는 시스테 충돌을 일으키지 않고 자신이 능숙한 언어로 데이터베이스 작업을 수행가능하다.
PostgreSQL은 여러 서버에 걸친 비동기식 또는 동기식 복제 방법을 통해 지속적이고 사고에 대처가 가능한 서비스를 보장합니다.
오픈 소스 데이터베이스 관리 기술을 이용하면 합리적이고 높은 유연성을 갖춘 솔루션을 이용할 수 있듯이 PostgreSQL은 다양한 컨트리뷰티 그룹이 개발하여 지식, 전문성, 오픈 소스 가치를 가지고 있습니다.
제가 가지고 있는 노트북은 맥북에어이기 때문에 postgreSQL 설치하기 위하여 먼저 HomeBrew를 이용하여 postgreSQL을 설치합니다.
터미널에서 해당 명령어를 작성한다brew install postgresql
설치한 뒤 시작한다.
brew services start postgresql
해당 터미널 문구가 뜨면 설치 성공!
밑에 있는 명령어로 설치 확인을 한다.
postgres -V 혹은 postgres -version
postgreSQL 접속하기
psql postgres
postgres=# CREATE ROLE postgres WITH LOGIN PASSWORD 'postgres';
postgres=# ALTER ROLE postgres CREATEDB;
postgres=# ALTER ROLE postgres CREATEROLE;
사용자 목록 조회
postgres=# \q
$ psql postgres -U postgres
postgres=> CREATE DATABASE test;
postgres=# 와 postgres=>의 차이는 #은 superuser라는 뜻이고 >은 아니라는 뜻이다.
GRANT ALL PRIVILEGES ON DATABSE test TO postgres;
데이터 베이스 리스트 보기
postgres=> \list
postgres=> \connect [데이터베이스]
postgres=> \connect test
이것으로 간단하게 Homebrew로 설치와 postgreSQL의 환경설정까지 해봤습니다.
다음에는 dbeaver를 사용하여 테이블 생성까지 해보겠습니다.
참조 :
https://blog.naver.com/kejk695/223281528972
https://velog.io/@jochedda/Mac-OS-PostgreSQL-%EC%84%A4%EC%B9%98-%EB%B0%8F-%EC%A0%91%EC%86%8D-DBeaver-%EC%99%80-%EC%97%B0%EA%B2%B0%ED%95%98%EA%B8%B0