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 2344 게시물 읽기
No. 2344
Windows 2000에서 PostgreSQL 설치 성공기..
작성자
김일형
작성일
2001-02-22 07:44
조회수
4,843

안녕하세요... 김일형이라고 합니다.

 

개인적으로 PostgreSQL과 Linux를 좋아하는데....

아무리 뒤져봐도 PostgreSQL을 윈도그에서 설치할 적당한 방법이 없는 것같아 며칠동안 엄청 삽질하다가 이렇게 성공기를 올립니다.

 

//////////////사양///////////////

집: Linux 2.4.1

Postgres 7.0.3

회사: 윈도그 2000

 

//////////////목표///////////////

집에서는 JDBC를 이용한 JAVA개발과 실제 서비스.

회사에서는 테스트와 개발계속.

따라서 리눅스에서 만들어진 DB의 dump data를 회사에서 적용하고 왔다갔다....

 

//////////////준비물/////////////

1. Cygwin 최신버전...

이것은 설치하는 법이 많이 나와있으니 따로 설명하지 않겠습니다.

이것을 설치하는 이유는 Postgres Windog Version이 제공하는 Cygwin

에는 워낙 아무것도 없어서 기본 쉘 유틸들을 제공받기 위함입니다.

 

2. Postgres Windog Version.

ftp://database.sarang.net/pub/database/postgresql/pgsql/for/win/PostgreSQL.exe 에서 다운받을 수 있습니다.

 

3. JDBC Driver...

저는 이거 Cygwin에서 직접 컴파일해서 만들었는데요...

일반적으로 리눅스 배포판에 들어있는 jdbc7.0/1.2.jar를 사용해도 되는군요.

(윈도그 일지라도...)

 

/////////////설치법///////////////

1. Postgres Windog Version 다운로드.

위에서 말씀드린 싸이트에서 받을 수 있습니다.

 

2. Postgres Windog Version 설치.

설치는 무진장 쉽습니다.

나중에 편하게 사용하시려면 C:\ProgramFile.... 에 깔지 마시고

C:\pgsql 또는 C:\cygwin 같은데 까는게 낫더군요.

 

3. Postgres Windog Version 데몬 띄우기.

일단 설치를 끝내고 나면 윈도그 "Start"의 "Program"에

"PostgreSQL v.7.0.2"가 등록이 됩니다.

거기서 코끼리 모양의 "PostgreSQL Guardian"이 있는데 이게 Daemon입니다.

작동을 시키면 처음에는 DataBase를 초기화시킵니다.

아마 이것은 유닉스에서 깔고 나서 처음 "initdb"랑 같은 역할을

하는 것으로 판단됩니다.

초기화가 끝나면 우측 화면 밑에 코끼리 아이콘이 나타나는데 이것은 데몬이

떠있다는 얘기고요....

아이콘을 더블클릭하면 데몬화면이 뜨고, 옵션을 눌러보면 DB의

기본사양이 나타납니다. (거기에는 잘 모르면 건들지 말라는 경고도

있군요 /_/;; )

 

4. Postgres Windog Version 데몬 테스트.

다시 PostgreSQL 윈도그 메뉴에 가셔서 "Zeos Database Explorer"를

작동시키십시요.

그러면 접속을 위한 일반사양이 나타나는데 초기 DB는 "template1"으로

되어있고 로그인 네임이 이상한 녀석으로 나타나있는데 이것을

자신의 로긴이름으로 바꾸십시요. (Password없어도 됩니다.)

그리고 접속. 만일 이때 화면에 "Connection" 어쩌고 나오면 일단

컴퓨터를 껏다가 따시 시작해서 해보세요... 저는 무리 없이 잘 되더군요.

그리고나서 정상적으로 DB Explorer가 뜨면 데몬은 정상입니다.

 

5. 내부 고찰.....

설치하신 디렉토리에 가보시면 (예: C:\pgsql, C:\cygwin)

유닉스 시스템과 같은 디렉토리명들이 많이 있습니다...

다시 말씀드리면 윈도그버젼이지만 내부적으로는 Cygwin에서 돌아가는

겁니다. 그것을 잘 포장한 것이죠.

그리고 기본적으로 DB는 그 디렉토리의 Data라고 하는 곳 밑에

다 들어있습니다.

그리고 기본적인 Postgres유틸들은 /bin디렉토리 밑에있습니다.

(예: postmater, psql, pg_ctl.. 등등)

 

6. 쉘 작동시켜보기.

윈도그 "PostgreSQL" 메뉴에 가보시면 "Cygwin Bash Shell"이라는 놈이

있는데 그걸 작동시켜 보시고 5번에서 말씀드린 디렉을 확인해 보십시요.

앞에서 말씀드렸듯이 여기에는 유틸이 아무것도 없습니다. vi, cat,

less 등등...

 

7. Cygwin 보강하기.

Cygwin에 가셔서 먼저 로칼로 다운을 받으시고, 다시 이것을 인스톨하면

되는데, 이때 설치 디렉토리를 "PostgreSQL Windog Version"을 깔던

때와 같은 곳에 설치하셔야 합니다.

그래서 각종 에디터나 유틸들을 보강해주세요.

 

8. Cygwin 확인.

일단 설치를 끝내신 후에 화면에 생긴 "Cygwin" 아이콘을 실행시키시고,

5번에서 말씀드린 곳을 왔다갔다 해보세요. 그리고 보강한 유틸들도

확인해보시고....

 

9. 개인 DB생성.

위의 4.번에서 말씀드린 "Zeos DB Explorer"로 가셔서 접속을 하신다음

"File"메뉴에서 "Create Database"를 선택하셔서 거기서 원하시는 DB를

생성하시고, 일단 접속을 종료했다가 다시 생성한 DB로 접속을 해보세요.

잘될겁니다...

 

10. 중간정리......

일단 여기까지만 하시면 기본적으로 DB를 생성하시고 Query를 실행하시고,

JDBC와 연결하는 것도 문제가 없을 것입니다. (물론 JDBC드라이버는

org.postgresql.Driver이고 url은 "jdbc:posgresql://xxx.xxx.xxx.xxx/dbname"

인것은 당연히 아실테죠...

 

위에서 password를 쓰지 않아도 되는 것은 /Data/pg_hba.conf 화일에 맨끝에

127.0.0.1에서 오는 것은 "trust"로 되어있기 때문입니다.

보안이 필요하면 여기서 적당히 주면 되겠고, 자세한 것은 매뉴얼을 보시면

되겠습니다.

 

그런데 위의 목적에서 말씀드린 Linux와 윈도그 사이로 데이터를 왔다갔다

시키려면 "psql"사용해야 합니다.

 

11. psql사용하기..

처음에 쉘로 가셔서 psql을 실행시키면 아래와같은 에러가 나올겁니다.

되면요?... 되는데 뭐가 걱정입니까? 여기서 끝이죠.

 

$ psql dbname

psql: connectDBStart() // connect() failed: No such file or directory

Is the postmaster running at 'localhost'

and accepting connections on Unix socket '5432'?

 

분명히 "DB Explorer"도 잘되고 JDBC도 잘되는데 왜 이것만 접속이

안될까요.. 여기서 저는 무지 삽질했습니다. 포기도 했었었구요.

 

11/1. 사용자 등록하기.

쉘에서 "whoami"를 실행해보세요.

관리자와 유저가 따로 있는 경우에 아마도 거기에 나오는 id가

로긴이름과 틀릴것입니다.

psql을 정상적으로 사용하기 위해서는 기본적으로 쉘의 id가 postgresql에

등록이 되어야하는 것 같더군요.

 

"Zeos DB Explorer"로 DB에 접속하세요. 그러면 윈도 왼쪽에

"System Tables"라는게 있는데, 그 것을 펼쳐보시면 각 테이블 중에

"pg_shadow"테이블이 있고 이것을 선택하시면 최초에 입력하였던 자신의

id가 있음을 볼 수 있을 것입니다. 없으면 마시고...

그러면 툴바에서 "+"표시를 눌러서 현제 쉘에서 사용하는 id를

등록시키십시요. 그리고 모든 옵션(4개)은 "True"로 주시고...

sysid는 원하는 숫자를 입력하세요. (저는 501을 입력했습니다.)

그리고 툴바의 "v"를 눌러 업데이트를 시키면 사용자 등록은 끝입니다.

 

그리고 "pg_user"에 가보시면 거기에도 이미 등록이 되어있을 것입니다.

 

11/2 다시 psql실행에 도전.

다시 쉘로 돌아오세요.

거기서 다시 psql을 작동시키면 잘 될것 같지만 다시 그런 에러가

튀어나옵니다.

 

저도 왜인지는 모르겠는데 하여간 그렇더군요.

 

여기에 해결방안이 있습니다. psql 메뉴얼을 보면. 해결방안이 있습니다.

 

psql /h 127.0.0.1 /d dbname

 

이라고 입력하세요. /h 옵션은 host의 address를 /d는 db 이름에 대한

옵션입니다.

 

$ psql /h 127.0.0.1 /d dbname

Welcome to psql, the PostgreSQL interactive terminal.

 

Type: \copyright for distribution terms

\h for help with SQL commands

\? for help on internal slash commands

\g or terminate with semicolon to execute query

\q to quit

 

bbs=#

 

어떻습니까? 잘되죠?

 

기본적으로 실제 사용하는 Login명과 쉘에서 쓰는 id는 틀리지만

권한은 둘다 admin이니까 사용하는 데는 불편이 없을 것입니다.

 

이제 psql을 이용하여 Backup과 Restore를 맘대로 하실 수 있습니다.

 

이상의 글로 다른분들에게 도움이 되기를 바라며,

혹시 제가 잘못알고 있는 것이 있으면 바로잡아 주십시요.

즐거운 컴퓨팅 하세요.

 

김일형.

[Top]
No.
제목
작성자
작성일
조회
2352에러 문구 pq_recvbuf: ...
신현호
2001-02-24
3796
2353┕>Re: 에러 문구 pq_recvbuf: ...
정재익
2001-02-24 09:43:37
3985
2354 ┕>Re: Re: 에러 문구 pq_recvbuf: ...
신현호
2001-02-25 23:47:49
3853
2355  ┕>Re: Re: Re: 에러 문구 pq_recvbuf: ...
정재익
2001-02-26 02:22:31
4133
2350새로운 패스워드
사이버
2001-02-23
3495
2351┕>Re: 새로운 패스워드
정재익
2001-02-24 00:24:16
3582
2349'04/30/2001' is not a valid date..에러가 납니다.
김선희
2001-02-23
3515
2344Windows 2000에서 PostgreSQL 설치 성공기..
김일형
2001-02-22
4843
2345┕>님의 설명 아주 잘 들었습니다.. 근데..
김종섭
2001-02-22 10:36:54
3638
2346 ┕>Re: 조금 이상하긴 하지만... 이렇게 하시면..
김일형
2001-02-22 12:48:53
3653
2340postgresql 함수를 c에서 사용하고 컴파일 할때의 옵션..
이태웅
2001-02-21
3363
2341┕>Re: postgresql 함수를 c에서 사용하고 컴파일 할때의 옵션..
정재익
2001-02-21 21:59:31
3358
2337pg_dump 시 trigger
조석연
2001-02-21
3389
2342┕>Re: pg_dump 시 trigger
정재익
2001-02-21 22:15:36
3239
2347 ┕>Re: Re: pg_dump 시 trigger
조석연
2001-02-22 14:29:14
3505
2336postmaster가 구동이 안되요.
박은경
2001-02-21
3286
2338┕>Re: postmaster가 구동이 안되요.
아무개
2001-02-21 15:34:12
3501
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.021초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다