2014년 10월 30일 목요일

우분투에서 PostgreSQL 설치와 환경 설정

[환경]
OS - Ubuntu 14.04.1 LTS
postgresql-9.3


1. 설치

sudo apt-get install postgresql-9.3    *실제 디비

sudo apt-get install pgadmin3           *디비 관리 GUI 툴


2. postgres 계정 리셋

sudo su postgres -c psql template1

*sudo - 시스템 권한
  su     - 권한 변경
  -c      - 커맨드 옵션
  psql   - 쿼리를 실행할 수 있는 프로그램 명령어

  즉 시스템 권한으로 postgres 계정으로 psql 명령을 template1 계정으로 들어가게 실행하라는 뜻


위와 같이 실행하면 postgres=# 형태의 sql 프롬프트가 뜬다.

ALTER USER postgres WITH PASSWORD '1234';
\q

* 디비의 postgres 계정의 패스워드를 1234로 변경
   \q 는 sql 입력 프롬프트 종료

   PostgreSQL 을 설치하면 디비에 postgres 라는 기본 계정이 존재한다.
   그 계정의 비밀번호를 초기화 해주는 과정이다.

sudo passwd -d postgres
sudo su postgres -c passwd

*우분투의 postgres 계정의 패스워드를 설정해주는 과정이다.

   PostgreSQL 을 설치하면 우분투에 postgres 계정 역시 새로 생성된다.


sudo -u postgres createuser -D -A -P myuser
sudo -u postgres createdb -O myuser mydb

* postgres 계정을 이용하여 디비에 myuser 라는 계정을 생성하고,
   mydb 라는 디비도 생성한다.

   [사용된 createuser 옵션]
   -D 옵션은 해당유저가 다른 데이터 베이스를 생성할 수 없도록 제한하는 옵션
   -P 새로 만든 유저의 암호를 바로 설정할 수 있도록 한다.
   -A 는 man 으로 봐도 안나오고 뭔지 정확히^^;;;(아시는분 알려주세요ㅋ)

   [사용된 createdb 옵션]
   -O 생성하는 디비의 소유 유저 설정



사용자 삽입 이미지

만약 로컬에서 접속하는게 아닌 원격에서 접속해야 한다면/etc/postgresql/8.2/main/postgresql.conf를 수정해주어야 합니다.

sudo vi /etc/postgresql/8.2/main/postgresql.conf

이 파일에서 아래의 2줄을  밑에처럼 변경해 줍니다.

#listen_addresses = ‘localhost’
#password_encryption = on

listen_addresses = ‘*’
password_encryption = on

설정읠 변경했다면 sudo /etc/init.d/postgresql-8.2 restart 로 PostgreSQL을 재시작해줍니다.

출처 - http://blog.outsider.ne.kr/377