콘텐츠로 이동

3. Altibase 제거 및 메타 다운그레이드#

제품 설치 시 함께 설치되는 언인스톨러를 이용해서 Altibase 제품을 삭제하거나 하위 버전으로 다운그레이드 하는 방법을 설명한다.

  • Altibase 제품 삭제

  • 메타 다운그레이드 (Meta Downgrade)

Altibase 제품 삭제#

제품 설치 시 함께 설치되는 언인스톨러를 이용해서 Altibase 제품을 삭제하거나 롤백 할 수 있다. 롤백의 대상은 인스톨러를 통해 패치된 파일에 한해서이며 데이터 파일 및 로그 파일은 그 대상에서 제외된다. 베이스 릴리스와 함께 설치된 언인스톨러는 전체 제품을 삭제한다. 패치 적용 시에 설치된 언인스톨러는 전체 제품을 삭제하거나 해당 패치만 롤백 할 수 있다.

주의: HP-UX 플랫폼에서는 Altibase 패키지 인스톨러와 함께 제공되는 언인스톨러는 패치를 롤백 할 수 없고, 전체 제품을 삭제할 수만 있다. 그러므로 패치를 적용하기 전에 이전에 설치된 제품을 백업하기를 권한다.

전체 삭제#

Altibase 패키지 인스톨러를 이용해서 설치된 Altibase 제품 또는 패치는 삭제하고자 하는 제품과 함께 제공된 언인스톨러를 실행함으로써 삭제할 수 있다. 그러나 유닉스 환경에서는 언인스톨러가 환경 변수를 삭제하지 못한다. 따라서 사용자는 직접 계정의 환경 설정 파일에서 Altibase 관련 환경 변수를 삭제해야 한다. Altibase 제품을 삭제하려면, 다음 단계를 수행한다.

  1. $ALTIBASE_HOME/APatch 디렉터리에서 삭제하고자 하는 제품과 관련 있는 언인스톨러 (예를 들어 uninstall-base)를 선택한다.

  2. 언인스톨러를 실행한다.

패치 삭제#

Altibase 패키지 인스톨러를 이용해서 설치된 패치는 uninstall-p<patch_version> 의 규칙으로 이름 지어진 언인스톨러를 실행함으로써 삭제할 수 있다. 그러나, 가장 최근에 설치된 패치만 롤백 할 수 있다. 삭제 작업 중에는 패치가 삭제되고 이전 버전이 백업으로부터 복원된다.

패치를 롤백 하려면, 다음 단계를 수행한다.

  1. $ALTIBASE_HOME/APatch 디렉터리에서 삭제하고자 하는 패치과 관련 있는 언인스톨러 (예를 들어 uninstall-p0_0_0_1)를 선택한다.

  2. 언인스톨러를 실행한다.


메타 다운그레이드(Meta Downgrade)#

이 절에서는 메타 버전이 다른 Altibase의 패치를 롤백하기 위한 메타 다운그레이드에 대하여 설명한다.

Altibase는 패치를 롤백하기 위해서 현재 메타 버전과 다운 패치하려는 패키지의 메타 버전이 일치해야 가능하다. 패치를 삭제하거나 롤백할 때 메타 버전이 다르면, 우선 현재 버전의 메타를 이전 버전의 메타로 재구성해야 한다. 이러한 과정을 메타 다운그레이드(Meta downgrade) 또는 다운그레이드라고 한다.

메타 다운그레이드 사용방법#

버전 확인#

SYSTEM_.SYS_DATABASE_에서 현재 및 이전 메타 버전을 확인할 수 있다.

현재 메타버전은 META_MAJOR_VER, META_MINOR_VER, META_PATCH_VER 컬럼으로 확인할 수 있다.

이전 메타버전은 PREV_META_MAJOR_VER, PREV_META_MINOR_VER, PREV_META_PATCH_VER컬럼으로 확인할 수 있다.

버전을 확인하여 아래와 같이 META_MINOR_VER과 PREV_META_MINOR_VER의 버전이 다른 경우에만 메타 다운그레이드가 가능하다.

iSQL> SELECT META_MAJOR_VER, META_MINOR_VER, META_PATCH_VER,
 PREV_META_MAJOR_VER, PREV_META_MINOR_VER, PREV_META_PATCH_VER
 FROM SYSTEM_.SYS_DATABASE_;
META_MAJOR_VER META_MINOR_VER META_PATCH_VER 
-------------------------------------------------
PREV_META_MAJOR_VER PREV_META_MINOR_VER PREV_META_PATCH_VER 
----------------------------------------------------------------
8           5           1          
8           4           1          
1 row selected.

메타 다운그레이드#

메타 다운그레이드가 가능한 버전에 대하여 아래의 구문으로 메타 다운그레이드를 수행한다.

$ server downgrade

주의: 메타 다운그레이드를 수행하기 전에 서버를 종료(server stop)해야 한다. 서버를 종료하지 않고 수행하면 아래와 같은 에러가 발생한다.

$ server downgrade
 server is running !!!!
 you must shutdown first before server downgrade

$ server downgrade
...
...
...ISQL_CONNECTION = UNIX, SERVER = localhost
[ERR-910FB : Connected to idle instance]
Connecting to the DB server... Connected.

TRANSITION TO PHASE : PROCESS

TRANSITION TO PHASE : CONTROL

TRANSITION TO PHASE : META
  [SM] Recovery Phase - 1 : Preparing Database
                          : Dynamic Memory Version => Parallel Loading
  [SM] Recovery Phase - 2 : Loading Database 
  [SM] Recovery Phase - 3 : Skipping Recovery & Starting Threads...
                            Refining Disk Table 
  [SM] Refine Memory Table : ....................................................................................................................................... [SUCCESS]
  [SM] Rebuilding Indices [Total Count:138] .......................................................................................................................................... [SUCCESS]

TRANSITION TO PHASE : DOWNGRADE
Command executed successfully.

만약 메타 다운그레이드가 실패한 경우 다음과 같이 종료된다.

$ server downgrade
...
...
...
TRANSITION TO PHASE : DOWNGRADE
[FAILURE] Unable to initialize the meta database
Startup Failed....
[ERR-91015 : Communication failure.]
주의사항#

메타 다운그레이드가 실패한 경우 $ALTIBASE_HOME/trc 디렉터리의 altibase_boot.log, altibase_qp.log에서 실패 원인을 확인할 수 있다.

주의사항#

현 사용중인 서버의 메타 버전이 8.8.1 이상이고 다운그레이드 할 메타 버전이 8.7.1 이하이면서 GEOMETRY 타입의 컬럼이 있는 테이블이 1개 이상 있는 경우 다운그레이드가 실패한다.

데이터베이스를 재구성하거나 GEOMETRY 타입의 컬럼이 있는 테이블만 백업하고 테이블을 삭제한 후에 메타 다운그레이드를 수행해야 한다.

패치 삭제#

패치 언인스톨러를 실행하여 패치를 삭제한다.

주의사항#

서버 다운그레이드를 수행한 후 패치를 삭제해야 한다. 만약 삭제를 하지 않고 서버를 구동하면, 메타 버전이 이전 버전으로 수정된 상태이기 때문에 메타 업그레이드가 발생한다.