지식창고/DB

[Postgres SQL] Rocky 8.9 설치 방법

Developer D 2024. 5. 29. 10:46
반응형

Rocky 8.9 이외의 방법은 공식 홈페이지를 통해 버전을 고르고 가이드를 확인할 수 있음

https://www.postgresql.org/download/

 

PostgreSQL: Downloads

 

www.postgresql.org

 

설치 전 인터넷이 연결되어있는지 반드시 확인!

1. RPM을 이용하여 YUM 설정 Repository 추가 

sudo rpm -Uvh https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
  • RPM(Red Hat Package Manager)은 Red Hat 계열의 Linux 배포판에서 패키지를 설치, 업그레이드, 제거 및 관하는 도구로 기본 저장소에는 최신판이 존재하지 않거나, 원하는 패키지가 없을 수 있기 때문에 소프트웨어를 배포하는 제조사에서 Repository의 주소를 확인해야함  
  • -Uvh 
      • -U (Upgrade): 패키지를 업그레이드 / 패키지가 설치되어 있지 않으면 설치
      • -v (verbose): 자세한 정보를 출력 / 설치 과정을 자세히 보여줌
      • -h (hash): 설치 진행 상황을 해시(#) 기호로 표시 /  설치 진행률을 시각적으로 표시
  • https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm:
    • 설치할 .rpm 패키지 파일의 URL입니다. 이 URL은 PostgreSQL 공식 YUM 저장소 설정 파일
    • https://download.postgresql.org/pub/repos/yum/: PostgreSQL YUM 저장소의 기본 URL
    • reporpms/EL-8-x86_64/: Red Hat Enterprise Linux 8 (또는 CentOS 8) 64비트 아키텍처용 패키지 디렉터리
    • pgdg-redhat-repo-latest.noarch.rpm: PostgreSQL YUM 저장소 설정 파일입니다. 이 파일을 설치하면 시스템에 PostgreSQL YUM 저장소가 추가

 

2. 기존 postgresql 제거 

sudo dnf -qy module disable postgresql

기본 모듈과 설치할 버전이 충돌을 방지하기 위해 기존 psotgresql 을 제거함

  • dnf: DNF 패키지 관리 도구입니다.
  • -qy: -q는 조용하게 실행하고, -y는 모든 질문에 "yes"로 자동 응답합니다.
  • module disable postgresql: PostgreSQL 모듈을 비활성화합니다.

3. postgreSQL 14 서버 패키지 설치

sudo dnf install -y postgresql14-server

* dnf 에 대해 (dnf vs rpm)

 

4. postgreSQL 14 database 초기화

sudo /usr/pgsql-14/bin/postgresql-14-setup initdb

새로운 데이터베이스 클러스터를 생성하며 데이터가 위치한 디렉토리, teplate1, template 0 epdlxjqpdltm todtjd (유틸리티 및 응용프로그램 에서 사용하는 데이터베이스) 등이 생성됨

수동 초기화를 통해 MySQL과 비교했을때 자유도와 커스텀이 높다는 장점이 있음 

* Postgres initdb 공식 document

*PostgresSQL initDB는 왜하는 걸까?

*template1 , template 0 Database  란?

 

4. postgreSQL 14 database 시스템 등록 및 실행

sudo systemctl enable postgresql-14
sudo systemctl start postgresql-14

부팅시 자동으로 PostgreSQL14를 실행하도록 하고 PostgreSQL 14를 실행함

 

설치가 잘 되었다면 오류 메세지 없이 명령어가 실행됨

 

5. postgreSQL 14 database 시스템 등록 및 실행확인

systemctl status postgresql-14.service

Active로 잘나와있다면 실행 완료, 기본계정으로 접속확인

sudo -u postgres psql

커맨드 입력창이 해당 창으로 바뀌었다면 접속완료

*허가거부의 경우 root 계정으로 접속하여 /root 에서 psql 을 실행하였기 때문에  postgres 계정이 root의 home 에 권한이 없다는 경고임, postgresql DB를 사용하는 것에는 지장이 없음

 

*postgres 계정으로 접속시 

 

설치 완료 

반응형