postgresql The world's most advanced open source database
한국 포스트그레스큐엘 홈페이지 :PostgreSQL KR
- PostgreSQL 설치 방법을 검색해보면 runas /user:postgres cmd 해서 사용자 계정을 따로 만들던데 만들지 않아도 된다.
[ x ] . DB 초기화 // initdb.exe -D "DATA DIRECTORY" -E unicode --no-locale
- 이미 생성되어 있는 DIRECTORY 라면 안된다.
- DATA DIRECTORY 는 꼭 PostgreSQL\data 가 아니라도 어디든 상관 없다.
- 첫 설치시에는 DB 초기화를 꼭!!! 해주어야 한다.
[ x ] . 서비스 등록 // pg_ctl.exe register -N PostgreSQL -D "위에서 초기화한 DATA DIRECTORY"
- 보통 -U 사용자 이름 -P 비밀번호 옵션을 주던데 생략하면 deafult 로 Administrator 가 사용된다.
- pg_ctl: could not open service manager 라는 오류가 나온다면, 명령창을 관리자 권한으로 실행해서 한다.
[ x ] . 서비스 시작 // net start PostgreSQL
[ x ] . 서비스 중지 // net stop PostgreSQL
[ x ] . 서비스 제거 // pg_ctl.exe unregister -N PostgreSQL
[ x ] . 마지막으로 pgAdmin III 에서 다음과 같이 새 서버를 추가해 준다.
- 서비스 항목에 PostgreSQL , postgres 등등 넣어 보았지만 데이터베이스 연결 실패가 뜬다. 공란으로 두니 성공.
- 메뉴얼을 보면 pgAdmin will automatically discover services running on your local machine. 라고 되어있다.
- 즉, 자동으로 잡아준다. 그러니 뻘짓하지 말고 공란으로 놔둔다.
[ x ] . 통째로 BACKUP 한 DATA DIRECTORY 복구 방법.
- 위에서 initdb.exe 하여 생성한 DATA DIRECTORY 를 비운다.
- 통째로 BACKUP 해둔 DATA DIRECTORY 를 통째로 복사한다.
- pg_tblspc 와 pg_twophase (빈) DIRECTORY 가 없으면 생성해 준다.
- 복구 되지 않고 에러가 뜬다면 메모장을 열어 "PostgreSQL\bin\logfile" 파일 확인.
[ x ] . DATA DIRECTORY 통째로 BACKUP. - BATCH FILE -
- 통째로 BACKUP 하고, pg_dumpall.exe 를 사용하여 Poker_database_info_by_PostgreSQL.txt 에 또 BACKUP 한다.
@ECHO OFF REM 경로 끝 역슬래쉬(\)없어야한다. ↓↓↓↓↓↓ SET PostgreSQL_bin=C:\postgresql-9.2.4-1-windows-x64-binaries\bin
IF NOT EXIST "%PostgreSQL_bin%" (
IF NOT EXIST "%PostgreSQL_DATA%" (
IF EXIST "%DATA_BACKUP_DIR%" ( RMDIR "%DATA_BACKUP_DIR%" /S /Q ) |
[ x ] . Apatch Tomcat PostgrSQL JDBC Driver - http://jdbc.postgresql.org/
- 다운로드 후 .jar 파일을 "아파치/lib" 폴더에 넣어주면 된다.
- 위의 설치 방법 그대로 File System DATABASE 를 생성한후 해당 Directory 에 있는 postgresql.conf 파일에서 port 를 변경해 주면 된다. 그러면 port 만 다르고 모든게 똑같다.
"pg_ctl.exe" register -N "name1" -o "-p 54117" -D "db dir1"
"pg_ctl.exe" register -N "name2" -o "-p 54108" -D "db dir2"
"pg_ctl.exe" register -N "name3" -o "-p 54105" -D "db dir3"
"pg_ctl.exe" register -N "name4" -o "-p 54104" -D "db dir4"
"pg_ctl.exe" register -N "name5" -o "-p 54099" -D "db dir5"
- DATABASE File 을 통째로 복사해 왔다면 postmaster.opts, postmaster.pid 파일을 삭제해 주자. 안그러면 서비스 시작에서 오류가 발생한다.
'DB & SQL & web' 카테고리의 다른 글
[PostgreSQL] INSERT INTO SELECT (0) | 2013.02.15 |
---|---|
[jsp] long 쪼개기? 피식~ (0) | 2013.02.02 |
[PostgreSQL] 조건식 (0) | 2012.10.30 |
[PostgreSQL] 기본적인 쿼리 모음. (0) | 2012.10.29 |
MySQL - 유니코드 (0) | 2012.09.26 |