공부/postgresql

postgresql 설치

농사꾼개발자 2022. 7. 3. 18:10

postgersql를 설치해보자

 

1. postgresql 다운로드

postgresql 버전이 여러가지가 있는데 실습에 사용할 버전은 12버전을 사용함

https://www.postgresql.org/

 

PostgreSQL

The world's most advanced open source database.

www.postgresql.org

 

postgresql 12버전 linux용 설치파일 다운로드
CentOS 선택
설치된 운영체제의 버전에 맞게 선택. 아래의 스크립트를 복사

2. postgresql 설치

설치 스크립트를 한줄씩 복사하여 실행한다

yum을 이용한 설치는 root 권한이 있어야만 실행이 되므로 root로 계정으로 전환 하거나  sudo 권한을 미리 줘야함

postgresql12 설치를 위한 repository 정보 추가
postgresql-server 12 설치

프로그램 설치가 완료되면  postgresql 초기 설정을 위한 명령어를 입력

먼저 postgres db가 생성될 폴더를 생성한다

/home/ 디렉터리에 postgres 폴더를 생성했다

su postgres 명령어를 입력하여 postgres 계정으로 전환

postgresql12버전이 설치된 경로 /usr/pgsql-12/bin 로 이동

postgres 계정으로 전환 후 설치 경로로 이동

./initdb -D /home/postgres/postdb 명령어를 실행하여 db를 생성하면 오류가 발생한다

/home/postgres   경로에 권한이 없다...

postgres 경로의 오너를 postgres로 변경

chown postgres:postgres postgres

※ chown owner:group 디렉터리 or 파일

chown 명령어로 권한을 변경

initdb -D /home/postgres/postdb 실행

설치 완료

3. postgresql 실행

pg_ctl -D /home/postgres/postdb -l /home/postgres/postdb/pgsql12.log start

정상적으로 잘 설치됨!

4. 접속 테스트 및 테이블 생성

initdb -D 옵션으로 생성한 postgresql db 경로로 이동하면 postgresql 구동에 필요한 설정 파일을 확인할 수 있음

설정 파일을 몇가지 수정하면 외부에서 db tool을 이용하여 접속이 가능

/home/postgres/postdb 파일 리스트

vi편집기를 이용하여 postgresql.conf 파일을 오픈해보자

vi편집기가 실행이 되면 커맨드 모드에서  set number를 입력하여 파일을 line을 표시해보면

60번째 라인에 listen_address와 64라인에 port=5432 부분을 주석 제거

postgresql.conf 오픈 내용

vi편집기를 이용하여 pg_hba.conf 파일을 오픈하면 세션 연결시 인증 방식에 대한 설정을 확인 할 수 있음

address 부분과 method 부분을 아래와 같이 수정해준다

method md5는 패스워드 인증 방식을 나타내며 나머지 코드는 다음과 같다

trust 모든 역할 이름에 암호없이 연결 가능
reject 연결을 거부
scram-sha-256 암호 인증 가장 안전하지만 일부 클라이언트에서 지원되지 않음
md5 암호 인증
password 암호 인증 암호를 평문으로 전송
gss GSSAPI를 이용한 싱글 사인온
sspi SSPI를 이용한 싱글 사인온
ident Ident 인증
peer Peer 인증
ldap LDAP 인증
radius RADIUS 인증
cert SSL 클라이언트 인증서를 사용한 인증
pam PAM 인증
bsd BSD 인증

설정 파일 두가지를 수정하고 저장한 다음 db를 재시작 해보자

 

재시작 명령어는 

./pg_ctl -D /home/postgres/postdb -l /home/postgres/postdb/pgsql12.log  restart

db 재시작 후 listen 포트가 변경되었다...

방화벽을 오픈하고 접속 테스트를 해보자

먼저 psql을 이용하여 postgres 계정에 대한 패스워드를 설정해준다

DB툴 DBeaver를 이용하여 database와 테이블을 생성해보자

DB와 테이블 생성 후 테스트용 column user와 password에 데이터를 입력 후 조회

psql을 이용한 데이터 조회

DB가 정상적 잘 설치되었고 데이터 조회가지 잘 되는것을 확인

 

다음번에는 공간데이터 입력을 위한 postgis 설치를 해보자

https://postgis.net/

 

About PostGIS

PostGIS provides spatial objects for the PostgreSQL database, allowing storage and query of information about location and mapping.

postgis.net

 

'공부 > postgresql' 카테고리의 다른 글

QGIS를 이용한 공간데이터 구축  (1) 2022.07.10