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
번호 분류 제목 글쓴이 날짜 조회 수
16 응용개발 embedded sql 에서 char 사용시 주의 사항 admin 2008.11.21 19008
15 응용개발 jdbc에서 bit 데이터 타입 사용하기 손승일 2009.04.11 15013
14 응용개발 jdbc에서 질의 플랜정보 보는 방법 손승일 2009.04.15 15840
13 응용개발 loadjava 사용 시 inner class 로딩은 어떻게? admin 2008.11.21 27450
12 응용개발 maven에서 CUBRID JDBC Driver 추가하기 file 김승훈 2015.12.09 8935
11 응용개발 php에서 serialize/unserialize 사용 시 주의할 점 시난 2009.12.29 31628
10 응용개발 tomcat 5.5 버전 이상에서 dbcp(커넥션 풀링) 설정법 admin 2008.11.21 28527
9 응용개발 utf-8로 저장된 한글이 JAVA SP를 사용하여 읽어 오면 깨져 보일때 손승일 2012.03.10 20797
8 응용개발 weblogic 8.1 에 CUBRID Connection Pool, DataSource 설정 방법 file 웁쓰 2009.07.01 66306
7 응용개발 그루비로 큐브리드 함수(or 프로시저) 만들기 by 행복개발자(cyberuls) 시난 2009.07.14 18753
6 응용개발 오라클 to CUBRID로 마이그레이션 수행 시 주의사항 cubebridge 2012.11.12 16642
5 응용개발 용량이 큰 데이터를 질의로 저장하는 방법 남재우 2009.11.26 12117
4 응용개발 윈도우 환경에서 PHP 모듈 로드를 못 할 경우 해결법 3 Prototype 2009.11.26 22483
3 응용개발 응용프로그램에서 질의 처리시 commit/rollback 처리 문제 admin 2008.11.21 21599
2 응용개발 전체 레코드 개수 확인하는 SP 김승훈 2015.05.07 14726
1 응용개발 패키지 형태로 생성된 JAVA class를 JAVA SP에서 사용하기 손승일 2010.02.26 18375
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