converter_2008 사용법
소개: 기존의 큐브리드(6.6이상)을 이용하여 사용 되어지던 데이터베이스들에 대하여 큐브리드2008 버전으로 이전하기 위한 도구인 converter_2008에 대한 사용 방법을 설명한다. converter_2008이 지원하는 플렛폼은 linux, 윈도우이며, 데이터베이스를 변형하는 것이 아닌 단순히 이전대상 데이터베이스에 자료를 추출하여 큐브리드 2008버전의 데이터베이스에 추출한 자료를 가지고 로드를 수행하는 역할을 한다.(매뉴얼의 “데이터 이동과 백업 복구안내서”의 언로드, 로드 과정과 동일하다고 볼 수 있다.)
2008-10-07 기술컨설팅팀, CUBRID
목 차
주의사항
이전할 데이터베이스가 적합한지를 확인한다
데이터베이스 크기를 확인
물리적인 가용공간을 확보
큐브리드2008버전의 데이터베이스 이름 설정
사전준비 순서
현재 버전의 데이터베이스 정보확인
구 버전의CUBRID_DATABASES 환경변수 경로확인
원본데이터베이스 경로확인
원본데이터베이스 크기 확인
이전 큐브리드버전에 대하여 큐브리드2008로 업그레이드를 수행한다.(매뉴얼의 “2장 설치방법”을 참조.)
데이터베이스 생성
converter_2008 설치
converter_2008 수행
사용방법
사용절차
주의사항
이전할 데이터베이스가 적합한지를 확인한다.
이전할 데이터베이스의 버전은 큐브리드 6.6이상, 큐브리드 7.x이하이다.
큐브리드 2008에서 없어진 build-in 클래스를 원본 데이터베이스에서 사용(클래스의 attribute) 했었다면, 매뉴얼의 “데이터이동과 백업 복구 안내서”를 참조하여 build-in 클래스에 대한 참조를 모두 제거한 후 언로드/로드를 수행한다.
build-in 클래스는 다음과 같다.( converter_2008/ignore_class_list.txt 참조)
audio
slcaudio
agent
audio_agent
image
twod_image
threed_image
pbm
rawpbm
x11bitmap
데이터베이스 크기를 확인
converter_2008을 사용하여 데이터베이스를 이전할 경우 원본데이터베이스를 변형 하는 것이 아니므로 old와 new 데이터베이스가 존재하게 된다. 따라서 원본 데이터베이스의 크기 만큼의 새로운 데이터베이스가 필요하다.
물리적인 가용공간을 확보
converter_2008을 사용할 경우 위에서 설명한 것과 같이 새로운 데이터베이스를 만들어야 하므로 기존의 데이터베이스와 거의 동일한 크기의 공간이 필요하다.
이외에 원본데이터베이스에서 언로드 받게 되므로 추출된 자료를 저장할 수 있는 공간 및 로드를 수행 시 발생되는 데이터베이스의 로그파일들을 감안하여 충분한 가용공간이 필요하다.
큐브리드2008버전의 데이터베이스 이름 설정
원본데이터베이스와 새로 만들어질 데이터베이스의 이름은 동일할 수가 없다. 원본데이터베이스 이름을 변경하고 이후 큐브리드2008 버전의 새로운 데이터베이스에 변경 전의 원본데이터베이스의 이름을 명시 하여도 되며, 큐브리드2008 버전의 데이터베이스이름을 임시로 작성하고 이전과정을 모두 마친 후 변경 작업을 통해 원본데이터베이스 명을 명시할 수 있다.(매뉴얼의 “4장 데이터베이스 관리”의 데이터베이스 이름변경을 참조.)
사전준비 순서
현재 버전의 데이터베이스 정보확인
아래 예와 같이 “cubrid_rel” 명령을 이용하여 6.6버전임을 확인할 수 있다.
cubrid_rel
CUBRID Standalone Release 6.6.0.1088 Nov 30 2006 at 18:04:26
converter_2008에서 이전버전에 대한 CUBRID_DATABASES환경 변수 값을 선택적으로 사용할 수 있으므로 set명령어(윈도우, 리눅스)를 이용하여 CUBRID_DATABASES 환경변수의 경로를 확인한다.
구 버전의CUBRID_DATABASES 환경변수 경로확인
converter_2008에서 이전버전에 대한 CUBRID_DATABASES환경 변수 값을 선택적으로 사용할 수 있으므로 set명령어(윈도우, 리눅스)를 이용하여 CUBRID_DATABASES 환경변수의 경로를 확인한다.
원본데이터베이스 경로확인
이전버전에서 linux환경에서는 $CUBRID_DATABASES/databases.txt, 윈도우환경에서는 %CUBRID_DATABASES%ordblist.txt 파일을 가지고 확인을 한다.
아래는 linux에서 데이터베이스의 경로를 확인하는 예이다.(매뉴얼의 “4장 데이터베이스 관리” 항목을 참조.)
more $CUBRID_DATABASES/databases.txt
DB_6.6v /home/cubrid/DB_6.6v mozart /home/cubrid/DB_6.6v è 원본데이터베이스 경로
원본데이터베이스 크기 확인
새로 생성할 데이터베이스 크기를 예측하여야 하므로 spacedb 유틸을 사용하여 원본데이터베이스 크기를 확인 한다.. 아래는 원본데이터베이스 DB_6.6v에 대한 크기를 확인하는 예이다.(매뉴얼 “4장 데이터베이스 관리”의 데이터베이스 공간 확인을 참조.)
spacedb DB_6.6v
Space description for database 'DB_6.6v' with pagesize 4096.
Volid Purpose total_pages free_pages Vol Name
0 GENERIC 5000 2949 /home/cubrid/DB_6.6v/DB_6.6v
1 DATA 250000 44800 /home/cubrid/DB_6.6v/DB_6.6v_x001
2 INDEX 125000 30310 /home/cubrid/DB_6.6v/DB_6.6v_x002
3 TEMP 125000 74800 /home/cubrid/DB_6.6v/DB_6.6v_x003
Space description for temporary volumes for database 'DB_6.6v' with pagesize 4096.
Volid Purpose total_pages free_pages Vol Name
큐브리드2008로 업그레이드
매뉴얼의 “2장 설치방법”을 참조하여 큐브리드 이전버전을 큐브리드2008로 업그레이드 한다.
데이터베이스 생성
확인된 원본 데이터베이스크기를 이용하여 원하는 경로에 큐브리드2008버전의 데이터베이스를 생성한다.(매뉴얼의 “4장 데이터베이스 관리” 항목을 참조.)
아래는 linux에서 “/home/cubrid/CUBRID/databases/DB_2008v”경로에 데이터베이스를 생성하는 예이다.
cubrid createdb -F /home/cubrid/CUBRID/databases/DB_2008v DB_2008v
cubrid addvoldb -F /home/cubrid/CUBRID/databases/DB_2008v DB_2008v -p data -S DB_2008v 250000
cubrid addvoldb -F /home/cubrid/CUBRID/databases/DB_2008v DB_2008v -p index -S DB_2008v 125000
cubrid addvoldb -F /home/cubrid/CUBRID/databases/DB_2008v DB_2008v -p temp -S DB_2008v 125000
converter_2008 설치
큐브리드 다운로드페이지(http://www.cubrid.com) 에서 converter_2008을 다운 받은 후 압축을 해제한다.
아래는 linux에서 압축을 해제하는 예이다.
tar xfz converter_2008_linux.tar.gz
ls -l converter_2008
합계 52
drwxr-xr-x 5 cubrid cubrid 4096 9월 25 15:34 6_6
drwxr-xr-x 5 cubrid cubrid 4096 9월 23 16:48 7_1
drwxr-xr-x 5 cubrid cubrid 4096 8월 13 16:23 7_3
-rwxr-xr-x 1 cubrid cubrid 2558 9월 25 15:24 converter_2008.sh
-rw-r--r-- 1 cubrid cubrid 85 8월 14 11:01 ignore_class.txt
-rw-r--r-- 1 cubrid cubrid 1125 9월 25 16:41 readme.txt
converter_2008 수행
converter_2008을 수행하는 명령어는 linux에서converter_2008.sh 이며, 윈도우에서는 converter_2008.bat이다.
사용방법
./converter_2008.sh src_database target_database converter_2008_path [old_cubrid_databases_env] è linux
converter_2008.bat src_database target_database converter_path [old_cubrid_databases_env] è windows
-
src_databases : 원본데이터베이스(사전준비에서의 DB_6.6v)
-
target_database : 큐브리드2008 에서 생성한 데이터베이스(사전준비에서의 DB_2008v)
-
converter_2008_path : converter_2008이 존재하는 경로
-
old_cubrid_databases_env : 구 버전 원본 데이터베이스가 구동될 때의 CUBRID_DATABASES환경 변수
사전준비과정에서 원본데이터베이스의 경로를 확인하였다면, 아래와 같이 큐브리드2008의 CUBRID_DATABASES와 동일하게 설정하여 old_cubrid_databases_env 옵션을 생략할 수 있다.
more $CUBRID_DATABASES/databases.txt
DB_2008v /home/cubrid/CUBRID/databases/DB_2008v mozart /home/cubrid/CUBRID/databases/DB_2008v
DB_6.6v /home/cubrid/DB_6.6v mozart /home/cubrid/DB_6.6v è 원본 데이터베이스 경로
사용절차
큐브리드6.6버전의 데이터베이스인 DB_6.6v를 가지고 큐브리드2008버전의 데이터베이스 DB_2008v로 이전 하는 예를 가지고 설명한다.
./converter_2008.sh DB_6.6v DB_2008v /home/cubrid/converter_2008 /home/cubrid/CUBRID6.6/CUBRID_DATABASES
ð 구 버전의 CUBRID_DATABASE환경변수 위치를 알고 있다고 가정하여 “/home/cubrid/CUBRID6.6/CUBRID_DATABASES”와 같이 명시를 하였다.
Please select %old_dbname%'s version
1) 6.6 , 7.0
2) 7.1
3) 7.3
version ?1
ð 원본데이터베이스의 버전을 입력한다.
*** CUBRID Standalone Release 6.6.0.1088 ***
Generated Nov 30 2006 at 18:04:26
ð 원본데이터베이스 DB_6.6v로부터 언로드 받는 과정이다.
/home/cubrid/CUBRID/bin/cub_admin load --schema-file=/home/cubrid/converter_2008/6_6/../DB_6.6v_schema --index-
file=/home/cubrid/converter_2008/6_6/../DB_6.6v_indexes --data-file=/home/cubrid/converter_2008/6_6/../DB_6.6v_objects --ignore-
class-file=/home/cubrid/converter_2008/6_6/../ignore_class.txt -u dba DB_2008v
ð 로드작업을 수행하기 위한 명령어를 보여준다.
CUBRID 2008 R1.0
Start schema loading.
Total 150 statements executed.
Schema loading from /home/cubrid/converter_2008/6_6/../DB_6.6v_schema finished.
Statistics for Catalog classes have been updated.
ð 스키마 로드 작업이 완료됨을 확인 할 수 있다.
Start object loading.
Total 5320606 objects inserted.
ð 데이터 로드 작업이 완료됨을 확인 할 수 있다.
Start index loading.
Total 12 statements executed.
Index loading from /home/cubrid/converter_2008/6_6/../DB_6.6v_indexes finished.
ð 인덱스 로드 작업이 완료됨을 확인 할 수 있다.
/home/cubrid/CUBRID/compat/convert_password DB_2008v
ð 기존버전의 데이터베이스내의 계정암호방식이 변경되어 큐브리드2008버전으로 변경하는 작업을 자동으로 수행한다.