database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
ㆍPostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
PostgreSQL Q&A 5715 게시물 읽기
No. 5715
windows에서 postmaster실행하기
작성자
장병찬(otadae)
작성일
2004-12-01 23:10
조회수
9,138

현재 윈도우 계정은 administrator입니다.

 

postgres 설치폴더\bin에서

>postmaster -S -i -D ../data
명령을 치면 administrators not permmited ..어쩌구 하고 나오는데요

postgres는 postgresql-8.0-beta1-20040809.msi(windows버전)
tcp/ip 연결옵션을 -i 로 enabled 되게 하는 법좀 알려주세요

이 글에 대한 댓글이 총 2건 있습니다.

PostgreSQL win32 바이너리 설치하기.

- 김상기 ioseph

1. 사용자 만들기.

유닉스와 마찬가지로 일단 DB 서버를 운영할 시스템 사용자가 필요합니다.

쉘 명령 프롬프트 (cmd 창)에서 net user 명령이나, 컴퓨터 관리에서 사용자 추가로 postgresql 서버를 운영할 사용자를 만듭니다. 예를 들어서 유닉스에서 처럼 postgres

> net user postgres 1234 /add

 

2. postgres 사용자로 cmd 실행하기.

cmd 창에서 runas 명령을 이용해서 앞에서 만든 db 서버를 운영할 사용자(여기서는 postgres로 했습니다)로 새 cmd 창을 띄웁니다.

> runas /user:postgres cmd

이 명령이 실행되면 암호를 물어봅니다. 앞에서 암호를 1234로 지정했으니, 그렇게 하면 되겠지요.

 

3. initdb 작업

다운 받은 압축파일을 c:\pgsql 폴더에 풀었다고 가정하고, 그 폴더로 이동하면, bin\initdb.exe 파일 있습니다. 이 명령을 실행해서 새로운 db 클러스터를 만듭니다. 만드는 방법은 유닉스에서와 완벽하게 동일합니다.

> cd \pgsql

> bin\initdb -D data -E unicode --no-locale

-D 옵션은 만들어질 데이터 디렉토리를 지정하는 것이고, 윗 예제라면, c:\pgsql\data 가 됩니다.

-E 옵션은 데이터베이스의 기본 문자셋을 지정하는 것이고, 한국어를 가장 잘 처리하는 것이 unicode (utf-8) 밖에 없는지라, 이 문자셋을 사용합니다.

--no-locale 옵션은 한국어 정렬관련과 인덱스 관련 때문에 지정해 줍니다.

 

4. 기본 postgresql.conf 파일 적당히 수정하기.

새로 만들어진 data 폴더 안에 서버 환경 파일인 postgresql.conf 파일이 있습니다. 이 파일을 약간 수정해 주어야 합니다. 변경되는 값은 listen_addresses (외부에서 접속을 가능하게 하려면, '*' 또는 해당 시스템의 외부용 공식 ip여야합니다.)


listen_addresses = '*' # what IP interface(s) to listen on;
# defaults to localhost, '*' = any

또한 외부에서 이 서버로 접속을 하려면, data 폴더 안의 pg_hba.conf 파일도 수정해야하는데, 이부분에 대한 이야기는 메뉴얼을 참조하세요.

(M$ 쪽으로 보다 쉽게 움직이려면, 이 postgresql.conf 파일과, pg_hba.conf 파일을 비주얼하게 편집할 수 있는 툴이 나와야겠다는 생각이 드네요)

 

5. pg_ctl 명령을 이용한 서비스로 등록하기

새 데이터베이스 클러스트가 다 만들어졌으면, 이제 db 서버를 시스템이 켜지면 자동으로 실행되도록 윈도우즈 서비스로 등록해 둡니다. 이 작업은 postgres 계정이 아닌, 관리자 계정이어야합니다.

> c:\pgsql\bin\pg_ctl register -N postmaster -U postgres -P 1234 -D c:\pgsql\data

다음 postgres 계정이 서비스를 가동할 수 있는 권한을 부여해 주어야합니다. 이 작업도 관리자 권한으로 실행합니다.

> mmc c:\windows\system32\secpol.msc

명령으로 '로컬 보안 설정' 창이 나타나면, 거기서 로컬 정책 -> 사용자 권한 할당 영역으로 이동한 다음, '서비스로 로그온' 항목을 더블 클릭해서 편집 대화창을 띄우고, 앞에서 서비스로 실행시킬 사용자를 추가해 줍니다.

 

6. PostgreSQL 서버 실행하기.

시스템 관리자 권한으로 명령창에서 net start 명령으로 단순히 실행하면 됩니다.

> net start postmaster

여기서 postmaster 는 앞에서 pg_ctl register 명령에서 -N 옵션으로 지정한 이름입니다.

 

여기까지입니다. 특별한 문제가 없다면, 자연스럽게 가동될 것입니다. 잘 가지고 놀아보시고, 문제점들이 발견되면 DSN 게시판을 통해서 논의해 봅시다.

 

7. 테스트

GUI 툴로는 PgAdmin3 프로그램을 다운 받으셔서 테스트 해보시면 됩니다.  

그래서 늘 해왔듯이, psql 놈으로 테스트를 해보셔도 좋구요.

> c:\pgsql\bin\psql -U postgres template1

김상기(ioseph)님이 2004-12-02 14:03에 작성한 댓글입니다.
이 댓글은 2004-12-02 14:06에 마지막으로 수정되었습니다.

답변 정말 감사드려요.
추운겨울 잘 지내세요 ^^

장병찬(otadae)님이 2004-12-02 22:29에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
57218.0 Windows용 Binary에서 한글 인코딩 선택은? [2]
박인서
2004-12-06
2846
5719postgresql의 checkpoint process 관련하여.. [14]
김현만
2004-12-04
5745
5717한글 문자셋 질문입니다. [1]
채희범
2004-12-04
2917
5715windows에서 postmaster실행하기 [2]
장병찬
2004-12-01
9138
5714진짜 아시는분 없나요.....파워빌더에서 catalog error [4]
초보자
2004-11-30
5749
5712문자셋에 뭔가 이상이 있는거 같은데요.. [3]
장현성
2004-11-29
3213
5711같은 정보의 행값이 여러개 있을때 어떻게 지우나요? 하나만 남기고 [2]
whoni
2004-11-29
3198
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.049초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다