1. iLoader 개요#
iLoader의 소개#
정의#
iLoader는 Altibase 내에 존재하는 데이터를 테이블 단위로 다운로드하거나 업로드할 수 있도록 Altibase에서 제공하는 유틸리티이다. 다운로드되는 데이터는 텍스트 파일 형태로 저장되며, 해당 테이블의 속성에 대한 정보를 담는 FORM 파일을 필요로 한다.
용도#
Altibase의 iLoader는 데이터베이스의 이전이나, 테이블 단위 백업 등의 용도로 주로 사용된다. 그러나 데이터베이스의 스키마나 카탈로그 정보 등은 저장하지 않기 때문에, 백업의 용도로 사용할 때는 주의가 필요하다.
기능#
-
FORM 파일 생성
다운로드 또는 업로드 하려는 테이블의 정보를 담는 FORM 파일을 생성한다. -
데이터 다운로드
FORM 파일을 이용하여 데이터베이스 내의 테이블의 데이터를 텍스트 파일 형식으로 저장한다. -
데이터 업로드
텍스트 파일 형식으로 저장된 데이터를 FORM 파일을 이용하여 데이터베이스 내의 해당 테이블로 업로드 한다.
장점#
Altibase의 iLoader는 다음과 같은 몇 가지의 장점을 갖고 있다.
-
하나 이상의 파일을 사용하여 데이터를 업로드할 수 있다.
-
여러 개의 입력 레코드를 하나의 테이블로 업로드할 수 있다.
-
데이터를 한 번에 여러 테이블에 업로드할 수 있다.
-
이미 데이터가 입력된 테이블에 다른 데이터를 추가하거나 교체할 수 있다.
-
자료 입력 및 관리를 체계화할 수 있다.
설치 방법#
iLoader는 Altibase 패키지를 설치할 때 자동으로 설치된다.
실행 파일의 위치는 다음과 같다.
$ALTIBASE_HOME/bin
iLoader 설정#
iLoader는 서버에 접속하기 위해서 다음과 같은 정보가 필요하다.
-
ALTIBASE_HOME
서버 혹은 클라이언트가 설치된 경로 -
server_name
Altibase 서버가 구동되어 있는 컴퓨터 서버의 이름(또는 IP 주소) -
port_no
TCP 또는 IPC로 접속할 때 사용할 포트 번호 -
user_id
데이터베이스에 등록된 사용자 ID -
password
사용자 ID와 일치하는 암호 -
NLS_USE
데이터 검색 시, 사용자에게 보여주는 문자 집합
ALTIBASE_HOME은 환경 변수로 설정하도록 되어 있으며, 나머지는 커맨드 라인 옵션을 통해서 설정할 수 있다. (자세한 내용은 "일괄식 모드"를 참고한다.)
ALTIBASE_HOME은 일반적으로 서버가 설치될 때 자동으로 설정되는데 클라이언트의 경우에는 사용자가 직접 설정해야 한다. 설정되지 않았을 경우에는 올바로 동작하지 않을 수 있으므로 실행 전에 바르게 설정되어 있는지 확인할 것을 권장한다.
port_no와 NLS_USE는 환경 변수 또는 서버 설정 파일(altibase.properties)을 이용해서 설정할 수도 있다. 세가지 방법으로 모두 설정되어 있을 경우 적용 우선 순위는 다음과 같다.
-
커맨드 라인 옵션
-
환경 변수 (ALTIBASE_PORT_NO, ALTIBASE_NLS_USE)
-
서버 설정 파일(altibase.properties)
그러므로 설정된 값과 다른 옵션으로 연결하고자 할 경우, 커맨드 라인 옵션을 사용하면 서버 설정 파일이나 환경 변수를 다시 변경하지 않아도 된다.
옵션이 설정되어 있지 않을 경우에는 iLoader가 처음 실행될 때 옵션 입력 프롬프트를 띄우고 사용자에게서 해당 값을 입력 받는다. 이 때 바르지 않은 형식이나 유효하지 않은 값을 입력할 경우, iLoader는 올바르게 동작하지 않을 수 있다.
특히 NLS_USE 옵션은 사용자가 설정하지 않았더라도 실행 시에 입력 프롬프트가 나타나지 않는다. 만약 사용자가 NLS_USE 옵션을 설정하지 않았다면 기본값인 US7ASCII를 이용해 접속을 시도한다. 이 때 데이터베이스의 캐릭터 셋이 US7ASCII이 아닐 경우에는 올바로 실행되지 않거나 사용자 데이터가 일부 깨질 수 있으므로 반드시 NLS_USE를 사용 환경에 맞는 값으로 설정해야 한다.
원활한 iLoader 사용을 위해 다음 환경 변수를 설정할 것을 권장한다.
-
ALTIBASE_HOME: 서버 혹은 클라이언트가 설치된 경로
-
ALTIBASE_PORT_NO: 서버에 접속할 때 사용할 포트 번호
-
ALTIBASE_NLS_USE: 데이터 검색 시, 사용자에게 보여주는 문자 집합
-
PATH: 실행파일이 있는 경로인 $ALTIBASE_HOME/bin 추가
환경변수#
ALTIBASE_HOME#
패키지가 설치된 디렉터리의 위치이다.
ALTIBASE_HOME은 일반적으로 서버가 설치될 때 자동으로 설정되지만, 클라이언트는 서버의 환경 변수와 충돌할 수 있으므로 사용자가 직접 설정해야 한다.
ALTIBASE_PORT_NO#
접속할 서버의 포트 번호이다. -PORT 옵션 또는 altibase.properties 파일 내의 프로퍼티를 통해서 지정할 수 있다.
포트 번호 설정의 우선 순위는 -PORT 옵션, 환경변수 ALTIBASE_PORT_NO, altibase.properties 파일 내의 프로퍼티 순이며 아무것도 설정되지 않았을 경우에는 포트 번호 입력 프롬프트가 출력된다.
ALTIBASE_SSL_PORT_NO#
iLoader가 SSL/TLS 통신으로 접속할 서버의 포트 번호이다.
SSL 포트 번호 설정의 우선 순위는 -PORT 옵션, 환경변수 ALTIBASE_SSL_PORT_NO, altibase.properties 파일 내의 프로퍼티 순이다. 만약 아무것도 설정되지 않았을 경우에는 포트 번호 입력 프롬프트가 출력된다.
ALTIBASE_NLS_USE#
데이터 다운로드 및 업로드 시 데이터의 캐릭터 셋을 설정한다.
-
다운로드: 서버로부터 받은 데이터를 설정된 캐릭터 셋으로 저장한다.
-
업로드: 서버로 전송할 데이터의 캐릭터 셋이다.
주의) 업로드 할 때 데이터베이스의 캐릭터 셋과 ALTIBASE_NLS_USE에 설정한 값이 다를 경우에는 데이터 업로드가 정상적으로 동작하지 않을 수 있다. 반드시 적절한 값을 설정할 것을 권장한다.
-NLS_USE 옵션 또는 altibase.properties 파일의 프로퍼티를 통해서 지정할 수도 있다.
NLS_USE 설정의 우선순위는 FORM 파일의 DATA_NLS_USE(in 옵션 수행시에만 적용), -NLS_USE 옵션, 환경변수 ALTIBASE_NLS_USE, altibase.properties 내의 프로퍼티 순으로 참조 적용되며, 아무것도 설정되지 않았을 경우에는 기본 캐릭터 셋(US7ASCII)을 사용한다.
ALTIBASE_UT_FILE_PERMISSION#
aexport, iLoader, iSQL이 생성하는 파일들의 권한을 설정하는 공통 환경변수이다. 값을 설정하지 않으면 666 ( user:rw, group:rw, other: rw)로 설정된다.
예: user:rw, group:--, other:--
로 설정하는 경우,
export ALTIBASE_UT_FILE_PERMISSION=600
ISQL_FILE_PERMISSION, AEXPORT_FILE_PERMISSION, 또는 ILO_FILE_PERMISSION이 설정된 경우, ALTIBASE_UT_FILE_PERMISSION 환경 변수 보다 우선 처리된다.
예: export ALTIBASE_UT_FILE_PERMISSION=660; export ISQL_FILE_PERMISSION=600;
iSQL에서 생성되는 파일의 권한은 ISQL_FILE_PERMISSION=600이 우선처리되어 user:rw, group:--, other:--으로 설정된다. aexport, iloader가 생성하는 파일의 권한은 ALTIBASE_UT_FILE_PERMISSION=660에 따라 user:rw, group:rw, other:--으로 설정된다.
ILO_FILE_PERMISSION#
iloader가 생성하는 파일 권한을 설정하는 환경 변수이다. 값을 설정하지 않으면 666 ( user:rw, group:rw, other: rw)로 설정된다.
예: user:rw, group:--, other:--
로 설정하는 경우,
export ILO_FILE_PERMISSION=600