ALTIBASE를 stop하는 방법
ALTIBASE database 를 stop하는 방법은 아래의 2가지 방법이 있습니다.
(1) server stop script를 이용하는 방법
간단한 명령으로 db server를 중지할 수 있으며 가장 많이 사용되는 방식입니다. ALTIBASE를 설치한 unix 유저 계정에서 아래와 같이 "server stop" 이란 명령으로 db server 의 기동을 중단할 수 있습니다.
명령어 사용법: shell> server stop
$ server stop
-----------------------------------------------------------------
Altibase Client Query utility.
Release Version 5.3.5.36
Copyright 2000, ALTIBASE Corporation or its subsidiaries.
All Rights Reserved.
-----------------------------------------------------------------
ISQL_CONNECTION = UNIX, SERVER = 127.0.0.1, PORT_NO = 20419
Ok..Shutdown Proceeding....
TRANSITION TO PHASE : Shutdown Altibase
[RP] Finalization : PASS
shutdown immediate success. ( shutdown 이 성공적일 경우 좌측과 같은 메세지가 출력됩니다.)
(2) isql 접속후 shutdown 명령을 사용하는 방법
isql 로 접속한 후 shutdown 명령을 통해서 shutdown 방식을 선택적으로 사용하여 db를 stop할 수 있습니다.
$ isql -sysdba <- - - 반드시 sysdba모드로 접속해야 해야 합니다.
-----------------------------------------------------------------
Altibase Client Query utility.
Release Version 5.3.5.36
Copyright 2000, ALTIBASE Corporation or its subsidiaries.
All Rights Reserved.
-----------------------------------------------------------------
Write UserID : sys
Write Password :
ISQL_CONNECTION = UNIX, SERVER = 127.0.0.1, PORT_NO = 20419
[ERR-910FB : Connected to idle instance]
iSQL(sysdba)> select db_name from v$database;
DB_NAME
------------------------------------------------------------------------------------------------------------------------------------
mydb
1 row selected.
iSQL(sysdba)> alter database mydb shutdown immediate; <- - dbname 인 mydb는 설치시 선택사항으로 DB마다 다를 수 있습니다.
Ok..Shutdown Proceeding....
TRANSITION TO PHASE : Shutdown Altibase
[RP] Finalization : PASS
Alter success.
iSQL(sysdba)> exit
ALTIBASE 를 start 하는 방법
ALTIBASE database 를 start하는 방법은 아래의 2가지 방법이 있습니다.
(1) server start script를 이용하는 방법
간단한 명령으로 db server를 기동할 수 있으며 가장 많이 사용되는 방식입니다. ALTIBASE를 설치한 unix 유저 계정에서 아래와 같이 "server start" 이란 명령으로 db server 를 기동시킬 수 있습니다.
명령어 사용법: shell> server start
$ server start
-----------------------------------------------------------------
Altibase Client Query utility.
Release Version 5.3.5.36
Copyright 2000, ALTIBASE Corporation or its subsidiaries.
All Rights Reserved.
-----------------------------------------------------------------
ISQL_CONNECTION = UNIX, SERVER = 127.0.0.1, PORT_NO = 20419
[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:102] ...................................................................................................... [SUCCESS]
TRANSITION TO PHASE : SERVICE
[CM] Listener started : TCP on port 20419
[CM] Listener started : UNIX
[RP] Initialization : [PASS]
--- STARTUP Process SUCCESS ---
Command execute success.
$
(2) isql 접속후 startup 명령을 통해서 start하는 방법
ALTIBASE를 설치한 unix 유저 계정에서 isql 로 sysdba 모드로 db에 접속한 후 단계적을 db를 start할 수 있습니다.
$ isql -sysdba
-----------------------------------------------------------------
Altibase Client Query utility.
Release Version 5.3.5.36
Copyright 2000, ALTIBASE Corporation or its subsidiaries.
All Rights Reserved.
-----------------------------------------------------------------
Write UserID : sys
Write Password :
ISQL_CONNECTION = UNIX, SERVER = 127.0.0.1, PORT_NO = 20419
[ERR-910FB : Connected to idle instance]
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:102] ...................................................................................................... [SUCCESS]
TRANSITION TO PHASE : SERVICE
[CM] Listener started : TCP on port 20419
[CM] Listener started : UNIX
[RP] Initialization : [PASS]
--- STARTUP Process SUCCESS ---
Command execute success.
iSQL(sysdba)> exit
Database 를 기동한 후 정상 기동 유무를 확인하는 방법
ALTIBASE를 기동한 후 성공적으로 ALTIBASE DB 서버가 기동했는지 여부는 아래의 방법으로 확인할 수 있습니다.
(1) server start 후 출력 메세지
server start 명령 또는 isql 을 통해서 DB를 start 했을 때 다음과 같이 " — STARTUP Process Success — "가 출력됐는지 여부를 확인합니다.
$ server start
-----------------------------------------------------------------
Altibase Client Query utility.
Release Version 5.3.5.36
Copyright 2000, ALTIBASE Corporation or its subsidiaries.
All Rights Reserved.
-----------------------------------------------------------------
ISQL_CONNECTION = UNIX, SERVER = 127.0.0.1, PORT_NO = 20419
[ERR-910FB : Connected to idle instance]
Connecting to the DB server.. Connected.
..............................중략...............................
.....................................................................
[CM] Listener started : TCP on port 20419
[CM] Listener started : UNIX
[RP] Initialization : [PASS]
--- STARTUP Process SUCCESS ---
Command execute success.
(2) isql 을 통한 접속 테스트
대화형 쿼리 실행 도구인 is 또는 isql 상에서 간단한 SQL문을 실행하여 쿼리를 정상동작 유무 확인을 통해서 DB의 상태를 확인할 수 있습니다.
$ is
-----------------------------------------------------------------
Altibase Client Query utility.
Release Version 5.3.5.36
Copyright 2000, ALTIBASE Corporation or its subsidiaries.
All Rights Reserved.
-----------------------------------------------------------------
ISQL_CONNECTION = TCP, SERVER = 127.0.0.1, PORT_NO = 20419
iSQL> select sysdate from dual;
SYSDATE
---------------
08-MAR-2016
1 row selected.
iSQL>
(3) 간단한 점검쿼리
아래의 쿼리를 실행해서 간단히 DB의 상태를 확인할 수 있습니다.
세션수 확인 : DB에 현재 접속되어 있는 세션수를 확인합니다.
이중화 gap 확인 : 이중화(Replication) 을 사용중인 경우 이중화 gap 을 확인하여 이중화 상태를 확인할 수 있습니다.
이중화 gap 값이 증감을 반복할 경우는 정상상태적인 상태입니다.트랜잭션 처리 상태
DML 별 또는 DB에서 현재 처리되고 있는 누적 트랜잭션 처리량을 조회합니다. 계속 증가하고 있으면 정상적인 상태입니다.
ALTIBASE를 강제 종료하는 방법
시스템의 오동작 또는 시스템 리소스 부족등으로 ALTIBASE Database server 가 Hang 상태에 빠져서 server stop 과 같은 정상적인 방법으로는 DB를 stop할 수 없는 경우는 아래의 명령을 사용할 수 있습니다.
$ server kill
-----------------------------------------------------------------
Altibase Client Query utility.
Release Version 5.3.5.36
Copyright 2000, ALTIBASE Corporation or its subsidiaries.
All Rights Reserved.
-----------------------------------------------------------------
ISQL_CONNECTION = UNIX, SERVER = 127.0.0.1, PORT_NO = 20419
$
ALTIBASE server start/stop 시의 에러 메세지
(1) The database server is already up and running.
ALTIBASE server 가 이미 기동되어 있는 상태에서 추가로 server start를 시도한 경우 아래와 같은 메세지가 출력됩니다. 이미 Database 가 기동되어 있으므로 server start를 할 수 없습니다.
$ server start
-----------------------------------------------------------------
Altibase Client Query utility.
Release Version 5.3.5.36
Copyright 2000, ALTIBASE Corporation or its subsidiaries.
All Rights Reserved.
-----------------------------------------------------------------
ISQL_CONNECTION = UNIX, SERVER = 127.0.0.1, PORT_NO = 20419
The database server is already up and running.
[ERR-4107A : Unable to startup to the specified phase at current state.]
$
(2) Another SYSDBA session is already running
sysdba 권한을 가진 세션은 DB에 오직 한개만 연결을 허용합니다. sysdba 로 이미 접속되어 있는 session 이 존재하는 경우 server start 또는 server stop 을 위한 추가적인 sysdba 연결이 실패할 경우 나오는 에러 메세지입니다.
이미 연결된 sysdba 세션을 종료한 후 다시 연결을 시도해야 합니다.
$ server start
-----------------------------------------------------------------
Altibase Client Query utility.
Release Version 5.3.5.36
Copyright 2000, ALTIBASE Corporation or its subsidiaries.
All Rights Reserved.
-----------------------------------------------------------------
ISQL_CONNECTION = UNIX, SERVER = 127.0.0.1, PORT_NO = 20419
[ERR-41041 : Another SYSDBA session is already running.]
$