WebSphere Enterprise Service Bus, 버전 6.2.0 운영 체제: AIX, HP-UX, i5/OS, Linux, Solaris, Windows


저장소에서 관계 인스턴스 데이터 제거

관계를 사용하는 응용프로그램은 저장소에 연결된 관계 스키마 및 데이터가 있습니다. 저장소는 관계 인스턴스 데이터를 저장하도록 구성된 데이터베이스입니다. 프로덕션 서버에서 해당 응용프로그램을 설치 제거하면 서버가 저장소에서 관계 스키마 및 데이터를 제거하지 않습니다. 이 작업을 수행하려면 기존 관계 스키마를 수동으로 제거해야 합니다.

시작하기 전에

관계 스키마를 사용하는 응용프로그램을 해당 스키마에 액세스하는 모든 서버에서 설치 제거하는지 확인하십시오.

이 태스크 정보

관계가 포함된 응용프로그램을 설치할 때 서버는 테이블, 색인, 순서 및 스토어드 프로시저가 포함된 해당 데이터베이스 스키마 오브젝트를 작성합니다. 런타임 시, 테이블은 관계 인스턴스 데이터로 채워집니다. 관계가 포함된 응용프로그램을 설치 제거하면 테이블과 인스턴스 데이터가 데이터베이스에서 제거되지 않습니다. 이 설계는 관계 또는 역할 정의를 수정한 후 응용프로그램을 다시 설치하려는 경우 문제를 유발할 수 있습니다.
주: WebSphere® Integration Developer에서 UTE(유닛 테스트 환경) 테스트 서버를 사용하면 응용프로그램 프로젝트가 제거될 때 관계 스키마 및 데이터가 저장소에서 제거됩니다.

동일한 관계가 포함된 응용프로그램을 다시 설치하면 이전 스키마가 재사용됩니다. 그러나 관계 또는 역할 정의가 기존 스키마와 호환되지 않게 수정되면 관계 서비스는 예외를 발생시키고 관계 설치를 종료합니다. 로그에는 다음 예외와 메시지가 표시됩니다.

RelationshipServiceException("table <tablename> already exists, but the table schema is different from current role definition")

이 문제점의 해결방법은 저장소의 데이터베이스 플랫폼에 의해 제공되는 도구를 사용하여 기존 관계 스키마 아티팩트를 수동으로 제거하고 응용프로그램을 다시 설치하는 것입니다.

저장소에서 기존 관계 스키마를 제거하려면 다음 단계를 수행하십시오.

프로시저
  1. 데이터베이스를 찾으십시오. 데이터베이스 위치는 데이터베이스 플랫폼에 따라 결정됩니다.
    옵션 설명
    데이터베이스 플랫폼 위치
    Derby WASHOME\derby\databases\RepositoryDB
    기타 데이터베이스 위치는 서버의 설치 및 프로파일 작성 중에 구성됩니다. 예를 들어, 서버를 자동으로 구성하고 기본 데이터베이스 이름을 선택한 경우 데이터베이스 이름은 WPRCSDB입니다.

    i5/OS® 기반 DB2®의 경우 참조되는 컨테이너는 데이터베이스가 아니라 콜렉션입니다. 설치 및 프로파일 작성 중에 데이터베이스 이름이 아니라 콜렉션 이름이 구성되고 데이터베이스 이름이 아니라 콜렉션 이름이 기본적으로 WPRCSDB로 지정됩니다.

  2. 관계를 구성하는 데이터베이스 아티팩트를 삭제하십시오. 데이터베이스 플랫폼용 도구를 사용하여 제공된 관계에 대한 모든 데이터베이스 오브젝트를 삭제하려면 다음 단계를 수행하십시오.
    1. 다음 단계에서 데이터베이스의 데이터를 제거하기 전에 데이터베이스 백업을 작성하십시오.
      주: i5/OS 기반 DB2의 경우 데이터를 제거하기 전에 콜렉션 백업을 작성하십시오.
    2. 관계 테이블을 찾으십시오. 다음 테이블은 관계가 설치될 때 작성됩니다.
      테이블 형식
      관계 특성에 대한 테이블 1개 _<relname>_P_uniqueidentifier
      각 관계에 대한 인스턴스 ID를 생성하기 위한 테이블 1개(Derby의 경우) _<relname>_S_uniqueidentifier
      각 응용프로그램 특정 역할의 역할 특성에 대한 테이블 1개 _<relname>_<rolename>_P_uniqueidentifier
      각 응용프로그램 특정 역할에 대한 테이블 1개(정적 관계의 경우 일반 역할에 대한 테이블 1개도 작성됨) _<relname>_<rolename>_RT_uniqueidentifier
      제한사항: 관계 이름의 첫 번째 4개 문자만 사용됩니다. 데이터베이스에 여러 관계에 대한 테이블이 포함되어 있으면 첫 번째 4개 문자 내에서 관계 이름을 구분해야 합니다.
    3. 스토어드 프로시저를 찾으십시오. 스토어드 프로시저 오브젝트의 형식은 다음과 같습니다.

      _<relname>_RS_uniqueidentifier 또는 _<relname>_<rolename>_RS_uniqueidentifier

    4. 순서를 찾으십시오. 순서 오브젝트의 형식은 다음과 같습니다.

      _<relname>_S_uniqueidentifier

      제한사항: Derby에서는 순서가 지원되지 않습니다.
    5. 데이터베이스 플랫폼용 도구를 사용하여 다음을 삭제하십시오.
      1. 테이블
      2. 스토어드 프로시저
      3. 순서(Derby 제외)

결과

관계 인스턴스 데이터가 데이터베이스 저장소에서 제거됩니다.

다음에 수행할 작업

지금 응용프로그램을 다시 설치할 수 있습니다.

task 타스크 주제

이용약관 | 피드백


시간소인 아이콘 마지막 갱신 날짜: 2010년 7월 7일 수요일


http://publib.boulder.ibm.com/infocenter/dmndhelp/v6r2mx/topic//com.ibm.websphere.wesb620.doc/doc/tadm_relmgr_remove_relinstdata.html
Copyright IBM Corporation 2005, 2010. All Rights Reserved.
이 Information Center는 Eclipse 기술을 기반으로 합니다(http://www.eclipse.org 웹 사이트 참조).