Postgresql 설치 관련해서 정리해봅니다.
아래의 원문을 기반으로 작업을 해보면서 다시 정리를 한 내용입니다.
환경에 따라서는 에러가 나는 경우가 있어서 제 환경에 맞게 다시 정리해본 내용입니다.
* 필자의 OS 환경 : Windows 7 Home premium k, Service pack 1, 64bit 운영 체계
* 원문 : http://blog.naver.com/westminstor.do?Redirect=Log&logNo=80023975150
굳이 Postgresql의 장단에 대해서는 논하지 않겠습니다. 이미 다들 정보들을 입수하여 알고 계실테니...
글을 작성하는 현재의 최신 버전은 9.1.3 이군요.
1. Postgresql 다운받기
다운 경로 : http://www.postgresql.org/download/
사용하는 OS 환경에 맞추어 최신 버전을 다운 받는다.
필자는 윈도우 환경에서 설치해야 하기 때문에 윈도우 64비트 버전을 zip archive를 다운 받았다.
먼저 installer 버전을 다운 받았으나 설치시 에러가 발생하여 zip archive로 다시 다운 받았다.
* 리눅스/유닉스 관련 설치 정보 : http://richlino.egloos.com/1816137
* Windows Installer Version 설치 정보 : http://specialguy.tistory.com/70
2. 설치해 볼까나~
1) C:\pgsql 폴더 아래에 zip 파일의 압축을 해제
2) 윈도우 사용자 만들기
제어판에 들어가서 사용자 추가
postgres 유저를 생성한다. 샘플이니 비밀번호는 1234로 생성
3) 도스 커맨드 창을 띄우고... runas 실행
>runas /user:postgres cmd
postgres의 암호 입력:
cmd을(를) 사용자 "JSYOON-PC\postgres"(으)로 시작하려고 합니다...
이와같은 메시지가 나타나고 도스 커맨드 창이 새로 뜨게 된다.
4) DB 초기화
c:\> cd \pgsql
c:\pgsql> bin\initdb -D data -E unicode --no-locale
C:\pgsql>bin\initdb -D data -E unicode --no-locale
이 데이터베이스 시스템에서 만들어지는 파일들은 그 소유주가 "postgres" id로
지정될 것입니다. 또한 이 사용자는 서버 프로세스의 소유주가 됩니다.
데이터베이스 클러스터는 C 로캘로 초기화될 것입니다.
기본 텍스트 검색 구성이 "english"(으)로 설정됩니다.
data 디렉터리 만드는 중 ...완료
하위 디렉터리 만드는 중 ...완료
max_connections 초기값을 선택하는 중 ...100
기본 shared_buffers를 선택하는 중... 32MB
환경설정 파일을 만드는 중 ...완료
data/base/1 안에 template1 데이터베이스를 만드는 중 ...완료
pg_authid 초기화 중 ...완료
의존성 정보 초기화 중 ...완료
시스템 뷰들을 만드는 중 ... 완료
시스템 개체들 설명 자료 입력 중 ...완료
creating collations ... not supported on this platform
인코딩 변환규칙(conversion)들을 만드는 중 ...완료
사전을 만드는 중... 완료
내장개체들의 액세스 권한을 설정 중 ... 완료
information schema 만드는 중 ...완료
loading PL/pgSQL server-side language ... 완료
template1 데이터베이스 청소 중 ...완료
template1 데이터베이스를 template0 데이터베이스로 복사 중 ...완료
template1 데이터베이스를 postgres 데이터베이스로 복사 중 ...완료
경고: 로컬 연결의 인증 방법을 "trust" 방식을 지정했습니다.
이 값을 바꾸려면, pg_hba.conf 파일을 수정하든지,
다음번 initdb 명령을 사용할 때, -A 옵션을 사용해서 인증방식을 지정할 수 있습니다
.
작업완료. 이제 다음 명령을 이용해서 서버를 가동 할 수 있습니다:
"bin\postgres" -D "data"
또는
"bin\pg_ctl" -D "data" -l logfile start
5) Config 변경
생성된 data 폴더 하부에 postgresql.conf 파일과 pg_hba.conf 파일을 이용하여 설정을 수정할 수 있다.
여기서는 일단 localhost 에서만 접근하지만 다른 아이피 등으로 접근하는 사용자를 위해서 변경하는 방법을 간단히 소개한다.
C:\pgsql\data\postgresql.conf 파일을 오픈하면 중간에 아래와 같은 내용이 있다.
# - Connection Settings -
#listen_addresses = 'localhost'
=> listen_addresses = '*'
localhost 뿐 아니라 다른 아이피로도 DBMS에 접근 가능하도록 설정하는 것이다. 필자는 로컬 테스트만 진행하기에 변경하지 않았다.
포트 변경도 이 파일에서 가능하니 매뉴얼 참조~ (꼭 자기 필요 없으면 설명도 않한다.. 하지만 그게 내 신조임)
6) 서비스 등록
> c:\pgsql\bin\pg_ctl register -N postmaster -U postgres -P 1234 -D c:\pgsql\data
여기서
-U 다음에서는 윈도우 사용자. 앞에서 생성한 postgres
-P 다음에는 postgres 유저의 비밀번호
7) 서버 실행/종료 테스트
C:\Windows\system32>net start postmaster
postmaster 서비스를 시작합니다..
postmaster 서비스가 잘 시작되었습니다.
b. 커맨드 창에서 실행하기
실행
C:\pgsql>bin\pg_ctl -D data -l logfile start
server starting
아... 이 단촐한 메시지... 시작되었단다.
종료
C:\pgsql>bin\pg_ctl -D data stop
waiting for server to shut down.... done
server stopped
역시 단촐하게 두줄... 서버 멈췄다~ 끝
참 쉽죠잉???
이제 함 누려보입쉬다...