2. Altibase 실행과 종료#
이 장에서는 Altibase 설치 완료 후 데이터베이스 구동 및 종료를 어떻게 하는지에 대해서 설명한다.
Altibase의 실행#
Altibase 서버를 실행하는 방법은 server 스크립트를 사용하거나, 데이터베이스 관리자가 sys 계정을 사용하여 서버에 로그인 시 -sysdba 모드로 서버에 접속한 후 부여된 관리자 권한을 이용하여 실행할 수 있다.
Altibase 서버가 실행되는 과정을 살펴보면, 먼저 프로퍼티를 읽어들이고 시스템 메모리 검사를 거친 후, Altibase 시스템 환경 초기화, 시스템 데이터 초기화, 시그널 핸들링, 데이터베이스 공간의 메모리 초기화, 질의 처리 모듈 초기화, 마지막으로 쓰레드들을 초기화함으로써 Altibase 서버의 구동이 완료된다.
Altibase를 구동하는 명령어는 Altibase를 설치한 계정으로만 수행이 가능하다. 아래에서 iSQL 유틸리티 (Altibase패키지와 함께 배포됨)를 이용해서 데이터베이스를 구동하는 방법을 보여준다. Altibase 구동에 대한 자세한 내용은 Administrator's Manual을 참고하기 바란다. 그리고, iSQL 유틸리티에 대한 내용은 iSQL User's Manual을 참고하기 바란다.
$ isql -u sys -p manager -sysdba
-------------------------------------------------------
Altibase Client Query utility.
Release Version 7.3.0.0.1
Copyright 2000, Altibase Corporation or its subsidiaries.
All Rights Reserved.
-------------------------------------------------------
ISQL_CONNECTION = UNIX, SERVER = 127.0.0.1, PORT_NO = 20300
iSQL(sysdba)>
iSQL(sysdba)> startup
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:134] ............................... [SUCCESS]
TRANSITION TO PHASE : SERVICE
[CM] Listener started : TCP on port 20300
[CM] Listener started : UNIX
[CM] Listener started : IPC
[RP] Initialization : [PASS]
--- STARTUP Process SUCCESS ---
Command execute success.
또는 server 스크립트 명령을 이용하여 서버를 구동할 수 있다. server 스크립트에 대한 자세한 내용은 Utilities Manual을 참고하기 바란다.
$ server start
-------------------------------------------------------
Altibase Client Query utility.
Release Version 7.3.0.0.1
Copyright 2000, Altibase Corporation or its subsidiaries.
All Rights Reserved.
-------------------------------------------------------
ISQL_CONNECTION = UNIX, SERVER = 127.0.0.1, PORT_NO = 20300
[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:100] .................................. [SUCCESS]
TRANSITION TO PHASE : SERVICE
[CM] Listener started : TCP on port 20300
[CM] Listener started : UNIX
[RP] Initialization : [PASS]
--- STARTUP Process SUCCESS ---
Command execute success.
Altibase의 종료#
Altibase 서버의 종료는 server 스크립트 명령을 이용하거나, 데이터베이스 관리자가 sys 사용자로 -sysdba 모드를 통해서 서버에 접속 후 부여된 권한을 이용하여 실행할 수 있다.
서버를 종료시키는 명령인 shutdown은 세 가지 옵션을 갖고 있으며, 각각의 옵션에 따라 서버를 종료하는 방식이 다르다.
Altibase의 shutdown 명령어는 Altibase를 설치한 계정으로만 수행이 가능하다.
normal#
서버를 정상적으로 종료하는 방식으로, 클라이언트들이 모두 종료될 때까지 서버의 종료 작업을 대기하는 방법이다. 서버가 종료하면서 수행하는 일들은 클라이언트-서버간 통신 세션을 감지하는 쓰레드의 종료, 서비스 쓰레드의 종료, 자료 저장 관리자의 종료, 그리고 Altibase 서버 프로세스가 완전히 종료되기를 대기하는 일들이다. 이렇게 종료했을 때 다음과 같은 메시지가 출력된다.
iSQL(sysdba)> shutdown normal;
Ok..Shutdown Proceeding....
TRANSITION TO PHASE : Shutdown Altibase
[RP] Finalization : PASS
shutdown normal success.
immediate#
서버를 종료할 때, Altibase 서버가 현재 연결된 세션들을 강제로 단절하고, 현재 실행 중인 트랜잭션들을 철회(rollback)한 다음, 서버를 종료하는 방법이다.
iSQL(sysdba)> shutdown im../imgte
Ok..Shutdown Proceeding....
TRANSITION TO PHASE : Shutdown Altibase
[RP] Finalization : PASS
shutdown im../imgte success.
server stop
스크립트 명령을 사용하는 것과 동일하다.
$ server stop
-------------------------------------------------------
Altibase Client Query utility.
Release Version 7.3.0.0.1
Copyright 2000, Altibase Corporation or its subsidiaries.
All Rights Reserved.
-------------------------------------------------------
ISQL_CONNECTION = UNIX, SERVER = 127.0.0.1, PORT_NO = 20300
Ok..Shutdown Proceeding....
TRANSITION TO PHASE : Shutdown Altibase
[RP] Finalization : PASS
shutdown im../imgte success.
abort#
Altibase 서버를 kill -9
시스템 명령을 사용하여 강제로 죽이는 방법이다. 이 방법으로 Altibase 서버를 종료하면, 데이터베이스가 완전하지 못하여 다음에 Altibase 서버를 실행할 때 데이터베이스 복구 과정을 거쳐야 한다.
iSQL(sysdba)> shutdown abort
server kill
스크립트 명령을 사용하는 것과 동일하다.
$ server kill
-------------------------------------------------------
Altibase Client Query utility.
Release Version 7.3.0.0.1
Copyright 2000, Altibase Corporation or its subsidiaries.
All Rights Reserved.
-------------------------------------------------------
ISQL_CONNECTION = UNIX, SERVER = 127.0.0.1, PORT_NO = 20300
$