📌 PostgreSQL 컴파일 설치
AWS AMI2 환경에서 PostgreSQL를 Compile Install 하는 방법을 알아보겠습니다.
📒 설치 과정
PostgreSQL 설치를 위한 라이브러리 설치
$ sudo yum -y install gcc gcc-c++ make autoconf wget readline readline-devel
zlib zlib-devel openssl openssl-devel gettext gettext-devel
PostgreSQL 관리전용 계정 생성
이러한 특수 계정의 정보 등은 따로 기억해두거나 메모해놓는 편이 좋다
$ sudo adduser dbadmin
$ sudo passwd dbadmin
관리전용 계정의 Path 설정
Hot Ez Ex) .bash_profile은 해당 사용자가 시스템에 로그인 할 때마다 호출된다. (즉, 개별 사용자에 대한 설정 코드)
.. 기존의 코드는 전부 유지함 ...
# User specific environment and startup programs
POSTGRES_HOME=/project/db/pgsql
export POSTGRES_HOME
#PostgreSQL Home Path
PGDATA=/project/db/data
export PGDATA
#PostgrsqlSQL Data Path
LD_LIBRARY_PATH=/home/dbadmin/pgsql/lib
export LD_LIBRARY_PATH
#PostgreSQL Library Path
PATH=$POSTGRES_HOME/bin:$PATH
export PATH
PATH=$PATH:$HOME/.local/bin:$HOME/bin
export PATH
...
PostgreSQL 최신 버전, 혹은 원하는 버전 설치 ( 아래 주소는 예시 )
$ wget https://ftp.postgresql.org/pub/source/v10.6/postgresql-10.6.tar.gz
소유자 변경
$ chown dbadmin.dbadmin postgresql-10.6.tar.gz
$ chown dbadmin.dbadmin /project/db
압축 풀고 설치
$ tar zxvf postgresql-10.6.tar.gz
$ cd postgresql-10.6
$ ./configure --prefix=/project/db/pgsql
$ sudo make
$ sudo make check
$ sudo make install
📕 설치 이후
initdb 실행
$ cd /project/db/pgsql/bin/
$ ./initdb
그럼 아까 dbadmin bash_profile에 설정해둔 $PGDATA에 해당 하는 경로 ( 여기서는 /project/db/data에 기본 DB가 생성된다)
클라이언트 접속 환경설정 파일 수정 ( 외부 접근 허용 위함 )
Hot Ez Ex) pg_hba란 클라이언트가 postgreSQL에 접속할 때 거치는 환경설정 파일 중 하나이다.
(HBA는 호스트 기반 인증(host-based authentication)의 약어이다)
$ sudo vi pg_hba.conf
TYPE host에 관련한 내용을 지우거나 주석처리하고 아래와 같은 한 문장을 넣는다
host all all 0.0.0.0/0 md5
실행 & 확인
$ cd /project/db/pgsql/bin
$ ./pg_ctl start
$ ps -ef | grep post
비밀번호 변경
postgres=# alter user dbadmin with password ‘dbadmin’;
postgres 데이터베이스로 접속 및 데이터베이스 생성
$ psql postgres
postgres=# CREATE DATABASE db_name OWNER onwer_name;
\l 명령어를 통해 데이터베이스 리스트 확인 가능
이후 python과 postgreSQL 연동을 위해 psycopg2 설치
$ sudo yum install postgresql-devel python-devel
$ ./venv/bin/pip3.7 install psycopg2
가상환경 및 Django 설치에 대해서는
https://zladnrms.tistory.com/21?category=865627