본문 바로가기

TroubleShooting/DB

PPAS 9.2 설정 및 관련 자료 정리

728x90


 PPAS Postgres Plus Advanced Server 의 약자이고, EnterpriseDB 라는 회사에서 오픈 소스인 PostgreSQL 에다가 오라클 기능을 추가시킨 상용 버전 입니다.

 

서버는 192.168.X.Y 이고, 포트는 5444, 사용자/패스워드는 myid/mypasswd 로 설정했습니다. PostgreSQL 을 지원하는 DB 연결 프로그램으로 연결해보시면 다음과 같은 그림이 보일겁니다.


X

 

Database 밑에 mydb 가 있고, 다시 밑으로 Schemas 밑에 Service 가 있습니다. 우리가 사용할 테이블들은 Service 스키마라는 객체에 보이고 있습니다테이블의 특정 컬럼을 참조할 때 select userId from Service.AAA” 와 같이 스키마를 명시해야 합니다. PostgreSQL 에서는 DB 설정할 때 기본 스키마를 지정할 수 있습니다. 기본은 “public” 으로 되어 있는데, 만일 insert into AAAA values (111) 라고 실행하면 public 스키마의 AAA 테이블에 insert 를 합니다.

 

그리고, PostgreSQL 은 “case sensitive” 한 특성이 있어서, select userId from Service.AAAA 라고 쿼리문을 실행하면 자동적으로 소문자로 변경되어서 select userid from service.aaaa 가 실행됩니다. 결과값은 그런 테이블이 없다고 나오겠죠. 대문자가 포함된 쿼리문들은 항상 double quation(“”) 을 양쪽에 붙여야 합니다.

 

-       스키마 간의 join : PostgreSQL 에서는 다른 DB 끼리는 join 을 사용하지 못하고, 스키마끼리는 가능하다고 합니다.

 

-       DAO 클래스의 쿼리문

기존 :

sql = "delete from AAA where lastUseTime < ?";

jdbcTemplate.update(sql, new Object[] { limitTime });

 

변경 :

sql = "delete from \"Service\".\"AAA\" where \"lastUseTime\" < ?";

jdbcTemplate.update(sql, new Object[] { limitTime });

 

-       Datasouce 설정 : data-access.properties 는 다음과 같이 설정합니다.

jdbc.driverClassName=org.postgresql.Driver

jdbc.url=jdbc:postgresql://192.168.X.Y:5444/mydb

jdbc.username=myid

jdbc.password=mypasswd

 

-       JDBC 드라이버 : 9.2-1004-jdbc4. PostgreSQL 최신 버전은 9.3 이지만(2014.1.8 일 기준) 9.2 서버를 사용할 경우

<dependency>

<groupId>org.postgresql</groupId>

<artifactId>postgresql</artifactId>

<version>9.2-1004-jdbc4</version>

</dependency>

 

다음은 참고로 했던 사이트들의 링크입니다.

-       PostgreSQL 의 역사와 구조를 간단하게 설명한 개발자 블로그

http://helloworld.naver.com/helloworld/227936

 

-       PostgreSQL create table 매뉴얼

http://www.postgresql.org/docs/9.2/static/sql-createtable.html

 

-       PostgreSQL data type 매뉴얼

http://www.postgresql.org/docs/9.2/static/datatype.html

 

-       다른 DB 와 연결을 위한 dblink 설명 블로그 글

http://redtrain.tistory.com/811

 

-       PostgreSQL 관리자 명령어 설명 블로그 글

http://blog.naver.com/PostView.nhn?blogId=orion_203&logNo=130036311589

 

-       PPAS 9.2 install 가이드 문서

http://www.enterprisedb.com/docs/en/9.2/instguide/Table%2520of%2520Contents.htm

 

-       PPAS 9.2 server 가이드 문서

http://www.enterprisedb.com/docs/en/9.2/asguide/Table%2520of%2520Contents.htm