Background Image
응용개발
2015.12.29 19:28

CUBRID HA 제약 사항 및 확인 방법

조회 수 5304 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

CUBRID HA는 다음의 제약 사항이 있다.

- Linux 계열에서만 사용할 수 있다. CUBRID HA 그룹의 모든 노드들은 반드시 동일한 플랫폼으로 구성해야 한다.

- 테이블은 반드시 기본 키(Primary key)가 포함되어야 한다.

- Java 저장 프로시저 환경 구축은 복제되지 않으므로, Java 저장 프로시저를 사용하려면 모든 노드에 각각 Java 저장 프로시저 환경을 설정해야 한다.

- CALL 문으로 호출되는 메서드(: login(), add_user(), drop_user(), change_owner())는 복제 되지 않으므로 사용하지 않아야 한다.

- 통계 정보를 갱신하는 UPDATE STATISTICS 문은 슬레이브 노드에 복제되지 않는다.

- 시리얼 캐시를 사용하는 경우 CUBRID HA 그룹 내 노드 간 시리얼의 현재 값이 일치하지 않는다.

- 백업 시 -r 옵션을 사용하면 복제에 필요한 보관 로그까지 삭제될 수 있으므로 사용하지 않아야 한다.

- 클릭카운드 함수(INCR/DECR)는 쓰기 작업이므로 슬레이브 노드에서 사용하면 오류를 반환한다.

- LOB(BLOB/CLOB) 타입은 데이터베이스 볼륨이 아닌 별도의 파일로 저장되고 메타 데이터만 볼륨에 저장되는 구조이므로 LOB 데이터가 복제되지 않기 때문에 사용하지 않아야 한다.

 

응용 개발 시 HA 구성을 고려한다면 위와 같은 제약 사항이 포함되지 않도록 주의해야 하고, 오픈 전 꼭 점검을 수행하여야 한다.

위 제약 사항 중 DB 내에 포함되어 있어 확인하기 쉽지 않은

- Primary Key 누락 테이블

- Java 저장 프로시저 사용 여부

- LOB 타입 사용 테이블 및 컬럼

- 시리얼 캐시 사용 여부

를 아래 SQL을 사용하면 쉽게 확인 할 수 있다.

dba 계정으로 로그인한 후 수행하여야 한다.

 select 'NON_PK' "case", class_name "value" from db_class

where class_type='CLASS' and is_system_class='NO'

and class_name not in (select distinct class_name from db_index where is_primary_key='YES')

union all select 'SP', sp_name from db_stored_procedure

union all select data_type, class_name||' '||attr_name as table_column from db_attribute

where data_type in ('CLOB','BLOB')

union all select 'Serial Cache', name from db_serial where cached_num >0;

실행 결과는 아래와 같다.

case                  value

============================================

  'NON PK'              'code'

  'NON PK'              'lob_tb'

  'SP'                  'hello'

  'CLOB'                'lob_tb c'

  'BLOB'                'lob_tb b'

  'Serial Cache'        'cache_seq' 


참고로 HA 환경에서 LOB 타입을 사용하여야 하는 경우 BLOB은 Bit varying, CLOB varchar 로 대체하여 사용할 수 있다.


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
56 응용개발 응용프로그램에서 질의 처리시 commit/rollback 처리 문제 admin 2008.11.21 21599
55 응용개발 embedded sql 에서 char 사용시 주의 사항 admin 2008.11.21 19008
54 응용개발 tomcat 5.5 버전 이상에서 dbcp(커넥션 풀링) 설정법 admin 2008.11.21 28527
53 응용개발 loadjava 사용 시 inner class 로딩은 어떻게? admin 2008.11.21 27450
52 응용개발 Attempt to access a closed ResultSet(PreparedStatement) 오류 admin 2008.11.21 28035
51 응용개발 CUBRID 에서 제공하는 ODBC 함수 목록 admin 2008.11.21 26051
50 응용개발 jdbc에서 bit 데이터 타입 사용하기 손승일 2009.04.11 15013
49 응용개발 jdbc에서 질의 플랜정보 보는 방법 손승일 2009.04.15 15840
48 응용개발 PHP에서 prepared statement 사용하기 3 Prototype 2009.04.16 21454
47 응용개발 ODBC 드라이버를 이용한 Prepare 사용하기. seongjoon 2009.06.16 19590
46 응용개발 Java Data Type의 CUBRID Data Type으로의 변경 Tip cubebridge 2009.06.16 18032
45 응용개발 cubrid_fetch_all() php 함수로 만들어 사용하기 file 시난 2009.06.30 18619
44 응용개발 PHP에서 prepared statement 사용시 BIND 관련 팁 Prototype 2009.06.30 14843
43 응용개발 PHP 성능 최적화를 위한 고려 사항 웁쓰 2009.07.01 17415
42 응용개발 PHP PEAR extension 을 이용한 DB Time 추적 웁쓰 2009.07.01 19182
41 응용개발 PHP PEAR extension Cache-Lite 를 이용한 응용 프로그램 최적화 file 웁쓰 2009.07.01 17044
40 응용개발 PHP 프로그램을 작성할때 주의할 점 Prototype 2009.07.01 13728
39 응용개발 JDBC 사용시 SQL 로깅 - p6spy 사용 1 웁쓰 2009.07.01 35999
38 응용개발 weblogic 8.1 에 CUBRID Connection Pool, DataSource 설정 방법 file 웁쓰 2009.07.01 66306
37 응용개발 JDBC 커넥션 스트링에 UTF-8 명시하는법 Prototype 2009.07.03 19017
Board Pagination Prev 1 2 3 Next
/ 3

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales