PostgreSQL은 POSTGRES 4.2를 기반으로하는 객체 관계형 데이터베이스 관리 시스템입니다. PostgreSQL 13은 일반 대중 및 프로덕션 용도로 출시되었습니다. PostgreSQL은 모든 주요 Linux 운영 체제에서 실행되며  2001 년부터 ACID를 준수하고 있습니다. 또한 널리 사용되는 PostGIS  지리 공간 데이터베이스 확장기 와 같은 강력한 애드온이 있습니다  . 이 가이드는 CentOS 7에 PostgreSQL 13을 설치하는 과정을 안내합니다.

PostgreSQL 개발 팀은 각각 RHEL 및 Debian 기반 시스템에 대해 각각 온라인 YUM 및 APT 저장소에 사전 빌드 된 패키지를 제공합니다. 지원되는 배포판 중에는 CentOS, Fedora, Scientific Linux, Oracle Linux 및 Red Hat Enterprise Linux를 포함하는 모든 Red Hat 제품군이 있습니다. 이제 CentOS 7에서 PostgreSQL 13 설치를 시작할 수 있습니다.

 

CentOS 7에 PostgreSQL 13을 설치하는 방법

아래 단계를 사용하여 CentOS 7 Linux에 PostgreSQL 13을 설치합니다. 최근 CentOS / RHEL 8 시스템 에 PostgreSQL 13 설치 에 대한 별도의 기사를 작성했습니다 .

 

1 단계 : CentOS 7에 PostgreSQL Yum 리포지토리 추가

PostgreSQL Yum 리포지토리는 일반 시스템 및 패치 관리와 통합되며 PostgreSQL의 지원 기간 동안 지원되는 모든 PostgreSQL 버전에 대한 자동 업데이트를 제공합니다. 다음 명령을 실행하여 CentOS 7 Linux 시스템에 PostgreSQL 13 리포지토리를 추가합니다.

sudo yum -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

 

저장소를 추가 한 후 시스템 재부팅을 수행하는 것이 좋습니다.

sudo yum -y update

sudo reboot

 

2 단계 : CentOS 7에 PostgreSQL 13 설치

리포지토리를 성공적으로 추가 한 후 CentOS 7에 PostgreSQL 13 설치를 진행할 수 있습니다.

활성화 된 저장소 목록을 확인합니다.

$ sudo yum repolist

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

 * base: mirror.alpha-labs.net

 * extras: artfiles.org

 * updates: mirror.plustech.de

repo id               repo name                                           status

base/7/x86_64         CentOS-7 - Base                                     10,070

extras/7/x86_64       CentOS-7 - Extras                                      413

pgdg-common/7/x86_64  PostgreSQL common RPMs for RHEL/CentOS 7 - x86_64      360

pgdg10/7/x86_64       PostgreSQL 10 for RHEL/CentOS 7 - x86_64               789

pgdg11/7/x86_64       PostgreSQL 11 for RHEL/CentOS 7 - x86_64               838

pgdg12/7/x86_64       PostgreSQL 12 for RHEL/CentOS 7 - x86_64               414

pgdg13/7/x86_64       PostgreSQL 13 for RHEL/CentOS 7 - x86_64               140

pgdg95/7/x86_64       PostgreSQL 9.5 for RHEL/CentOS 7 - x86_64              698

pgdg96/7/x86_64       PostgreSQL 9.6 for RHEL/CentOS 7 - x86_64              759

updates/7/x86_64      CentOS-7 - Updates                                   1,134

repolist: 15,615

 

저장소에서 PostgreSQL 13 패키지를 사용할 수 있는지 확인하십시오.

$ sudo yum search postgresql13

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

 * base: mirror.alpha-labs.net

 * extras: artfiles.org

 * updates: mirror.plustech.de

========================== N/S matched: postgresql13 ===========================

postgresql13.x86_64 : PostgreSQL client programs and libraries

postgresql13-contrib.x86_64 : Contributed source and binaries distributed with

                            : PostgreSQL

postgresql13-devel.x86_64 : PostgreSQL development header files and libraries

postgresql13-docs.x86_64 : Extra documentation for PostgreSQL

postgresql13-libs.x86_64 : The shared libraries required for any PostgreSQL

                         : clients

postgresql13-llvmjit.x86_64 : Just-in-time compilation support for PostgreSQL

postgresql13-plperl.x86_64 : The Perl procedural language for PostgreSQL

postgresql13-plpython3.x86_64 : The Python3 procedural language for PostgreSQL

postgresql13-pltcl.x86_64 : The Tcl procedural language for PostgreSQL

postgresql13-server.x86_64 : The programs needed to create and run a PostgreSQL

                           : server

postgresql13-test.x86_64 : The test suite distributed with PostgreSQL

 

Name and summary matches only, use "search all" for everything.

 

이제 CentOS 7에 PostgreSQL 13 패키지를 설치합니다.

sudo yum -y install postgresql13 postgresql13-server

 

설치 프로그램이 요청하면 GPG 키를 가져옵니다.

------------------------------------------------------------------------------------------------------------------------------------------------------------------

Total                                                                                                                             7.0 MB/s |  15 MB  00:00:02

Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG

Importing GPG key 0x442DF0F8:

 Userid     : "PostgreSQL RPM Building Project <pgsqlrpms-hackers@pgfoundry.org>"

 Fingerprint: 68c9 e2b9 1a37 d136 fe74 d176 1f16 d2e1 442d f0f8

 Package    : pgdg-redhat-repo-42.0-11.noarch (@/pgdg-redhat-repo-latest.noarch)

 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG

Is this ok [y/N]: y

 

3 단계 : 데이터베이스 서비스 초기화 및 시작

CentOS 7에 PostgreSQL 13을 새로 설치 한 후에는 초기화가 필요합니다.

$ sudo /usr/pgsql-13/bin/postgresql-13-setup initdb

Initializing database ... OK

 

서비스 상태를 확인하여 실행 중인지 확인하십시오.

$ systemctl status postgresql-13

● postgresql-13.service - PostgreSQL 13 database server

   Loaded: loaded (/usr/lib/systemd/system/postgresql-13.service; enabled; vendor preset: disabled)

   Active: active (running) since Thu 2020-07-09 23:35:30 CEST; 37s ago

     Docs: https://www.postgresql.org/docs/13/static/

  Process: 1860 ExecStartPre=/usr/pgsql-13/bin/postgresql-13-check-db-dir ${PGDATA} (code=exited, status=0/SUCCESS)

 Main PID: 1865 (postmaster)

    Tasks: 8 (limit: 12210)

   Memory: 17.3M

   CGroup: /system.slice/postgresql-13.service

           ├─1865 /usr/pgsql-13/bin/postmaster -D /var/lib/pgsql/13/data/

           ├─1867 postgres: logger

           ├─1869 postgres: checkpointer

           ├─1870 postgres: background writer

           ├─1871 postgres: walwriter

           ├─1872 postgres: autovacuum launcher

           ├─1873 postgres: stats collector

           └─1874 postgres: logical replication launcher

 

Jul 09 23:35:30 centos-01.computingforgeeks.com systemd[1]: Starting PostgreSQL 13 database server...

Jul 09 23:35:30 centos-01.computingforgeeks.com postmaster[1865]: 2020-07-09 23:35:30.180 CEST [1865] LOG:  redirecting log output to logging collector process

Jul 09 23:35:30 centos-01.computingforgeeks.com postmaster[1865]: 2020-07-09 23:35:30.180 CEST [1865] HINT:  Future log output will appear in directory "log".

Jul 09 23:35:30 centos-01.computingforgeeks.com systemd[1]: Started PostgreSQL 13 database server.

 

시스템이 리봇 될 때 서비스가 시작되도록합니다.

$ sudo systemctl enable postgresql-13

Created symlink from /etc/systemd/system/multi-user.target.wants/postgresql-13.service to /usr/lib/systemd/system/postgresql-13.service.

 

4 단계 : PostgreSQL 관리자 암호 설정

PostgreSQL 관리자 암호를 업데이트합니다.

$ sudo su-postgres

] $ psql -c " 'StrongDBPassword'암호로 사용자 postgres 변경" ALTER ROLE

 

5 단계 : 원격 데이터베이스 연결 활성화 (선택 사항)

파일을 편집하고  /var/lib/pgsql/13/data/postgresql.conf Listen 주소를 서버 IP 주소로 설정하거나 모든 인터페이스에 대해 " * "를 설정합니다.

$ sudo vi /var/lib/pgsql/13/data/postgresql.conf

# 59 행

listen_addresses = '172.20.11.11'

 

원격 연결을 허용하도록 PostgreSQL 설정

$ sudo vi /var/lib/pgsql/13/data/pg_hba.conf

# 어디서든 수락 (권장하지 않음)

host all 모두 0.0.0.0/0 md5



# 신뢰할 수있는 서브넷에서 수락 ( 권장 설정 )

host all 모두 172.20.11.0/ 24 md5

 

변경 사항을 저장 한 후 데이터베이스 서비스를 다시 시작합니다.

sudo systemctl restart postgresql-13

 

사용자 이름과 선택적으로 데이터베이스 이름을 제공하면서 psql 명령을 사용하여 연결을 테스트합니다.

$ psql -U <dbuser> -h <serverip> -p 5432 <dbname>

 

6 단계 : pgAdmin 4 웹 인터페이스 설치

pgAdmin은 PostgreSQL 데이터베이스 서버를 관리하기위한 오픈 소스 도구입니다. 아래 가이드를 사용하여 CentOS 7 컴퓨터에 pgAdmin4를 설치하고 사용하십시오.

CentOS 7에 pgAdmin 4를 설치하는 방법

 

Install pgAdmin 4 on CentOS 7 & Fedora 33/32/31/30 | ComputingForGeeks

pgAdmin is the leading Open Source feature-rich PostgreSQL administration and development platform that runs on Linux, Unix, Mac OS X, and

computingforgeeks.com

CentOS 7 서버 또는 Workstation에 PostgreSQL 13 설치를 완료했습니다. 자세한 내용은 PostgreSQL 관리 설명서를 참조하십시오  .

 

PostgreSQL: Documentation

Documentation This section contains current and archived manuals for PostgreSQL users. You can read the release notes, and view a listing of books written about PostgreSQL.

www.postgresql.org

 

+ Recent posts