TOOL/DATABASE 2015. 11. 30. 13:42

///// PostgreSQL

(포스트그레스큐엘?)


PostgresSQL인지 PostgreSQL인지.. 하나만 정확히 쓰면 좋겠는데 헷갈리네요. 


데이터를 보관할 SERVER(서버)에 설치하는 Database(데이터베이스)입니다.


Ubuntu 14.04 LTS 에서 설치한 경험을 순서대로 적어보았습니다.




///// Download(다운로드)

http://www.enterprisedb.com/downloads/postgres-postgresql-downloads


///// Linux(리눅스)에 설치하기

원하는 경로로 FTP 또는 wget명령어를 이용하여 파일을 위치시킨다.

# wget http://get.enterprisedb.com/postgresql/postgresql-9.4.4-3-linux-x64.run


텍스트 모드로 설치 한다.

# ./postgresql-9.4.4-3-linux-x64.run --mode text


엔터를 치면 대부분 []괄호 안의 내용으로 설정되며, 변경하고 싶으면 입력 후 엔터

Installation Directory [경로] : 

Data Directory [경로] :

Password :

Retype Password :

Port [5432] :

Please choose an option [1] :

Do you want to continue ? [Y/n] :


리눅스에 postgres라는 이름의 계정을 만든다.

# useradd postgres


설치된 PostgreSQL의 소유권을 postgres계정에게 준다.

# chown -R postgres.postgres /opt/PostgreSQL/9.4


postgres로 접속한다.

# su - postgres


환경변수를 설정한다. (어디서나 실행 할 수 있도록)

$ vi .bash_profile


다음을 작성하여 파일을 생성한다.(vi편집기 지식 필요) 

- (처음엔 명령모드임!) (글쓰기모드 단축키는 i) 

- (저장 후 종료는 ESC눌러서 명령모드에서 :wq 엔터) (저장 안하고 종료는  :q! 엔터)

POSTGRES_HOME=/PostgresSQL/9.4
PATH=$PATH:$POSTGRES_HOME/bin
PGLIB=$POSTGRES_HOME/lib
PGDATA=$POSTGRES_HOME/data

export POSTGRES_HOME PATH PGLIB PGDATA


환경변수를 적용한다.

$ source .bash_profile


db를 초기화?한다.

$ initdb -E utf-8 data


data/postgresql.conf파일에 다음이 설정되어 있지 않으면 vi편집기로 추가 또는 수정한다.

$ vi data/postgresql.conf

listen_address = '*'


db서버를 가동시킨다.

$ pg_ctl -l pgLog.log start


5432포트가 LISTEN하고 있는지 확인한다.

$ netstat -ntlp | grep 5432


data/pg_hba.conf파일을 vi편집기로 가장 아래 다음을 추가한다.

$ vi data/pg_hba.conf

host     all     all     0.0.0.0/0     md5


환경설정을 변경하였으므로 다시 재가동한다.

$ pg_ctl restart


이제 pgAdmin이라는 Client(클라이언트) 프로그램으로 접속 가능해 진다.





///// 참고

- 구루비 PostgreSQL 강좌 쫘르르 : http://www.gurubee.net/postgresql/basic

- Enterprise DB 공식 블로그 : http://postgresblog.co.kr/220514323320

- 정말 잘 해 놓으신 곳 : http://blog.naver.com/albertx/100161149015

'TOOL > DATABASE' 카테고리의 다른 글

[PostgreSQL]에 접속하기 위한 pgAdmin 설치&접속  (0) 2015.12.01
[PostgreSQL] 설치 후 PSQL에서 권한 설정  (0) 2015.12.01
EXISTS() 와 IN  (0) 2015.11.25
DECODE()  (0) 2015.11.25
RANK(), ROWNUMBER()  (0) 2015.11.13