TmaxData의 Tibero4로 migration을 진행하면서 알게된 몇가지 내용 중 Index rebuild에 대해서 얘기해보고자합니다. 기존에 사용하던 Oracle을 기준으로 하면... (제가 가장 잘 아는게 Oracle이라 이녀석이 기준입니다.) Index를 사용하다가 rebuild 해줄때 몇가지 옵션을 줄 수 있습니다.

SQL> ALTER INDEX IDX01 REBUILD ONLINE;
   * 기존의 인덱스를 계속 유지한채로 REBUILD하고, REBUILD가 끝나면 바꿔치기 하는 옵션이죠.

SQL> ALTER INDEX IDX01 REBUILD ONLINE TABLESPACE TS_IDX2;
   * REBUILD를 하면서 저장하는 TABLESPACE도 바꾸는 옵션이죠.


 사실 DB 관리를 하다보면 tablespace를 바꿔줄 일이 가끔씩 생깁니다. 그래서 Tablespace를 바꿀 수 있는 옵션은 아주 유용합니다. 그런데... Tibero4에서는 이를 지원하지 않고 있네요. ㅡ.ㅡ
[General syntax error]라는 오류가 발생합니다. Tmax에서도 지원하지 않는다고 하네요. 그런데, Tmax에서 제공하는 Tibero 관리/개발용 툴인 tbAdmin에는 인덱스 리빌드창(마법사??)에서 Tablespace를 선택할 수 있도록 되어있습니다. 혹시나 해서 실행시켜보니까 똑같은 오류가 발생하네요.


 Tibero를 사용하면 꼭 사용해보게되는 tbAdmin이라는 Tool이 있습니다. Tmax에서 Eclipse 기반으로 개발한 Tibero client tool입니다.
 작년 겨울부터 사용해온 툴인데... 이건 뭐...이클립스로 이런 저런 툴을 다 만들수 있구나 하는걸 알 수 있습니다.
IBM은 심포니라는 오피스 프로그램까지 만들어 놓기는 했지만, 국내 기업 중에서 이렇게 툴을 만들어 내놓은게 참 반갑더군요.

 문제는 Tibero에 있지 않나 생각합니다. tbAdmin에는 설정하는 항목이 있는데, Tibero에서는 막상 그 설정변경된 내용이 지원되지 않아서 에러가 발생하는 웃기는 상황이 있더군요.
뭐... 자세한 내용은 다음에 소개하도록 하겠습니다. 다만... 이클립스 기반으로 만들 툴이 좀 아깝구나 하는 생각이 들었습니다. 그럭저럭 client 설치없이 바로 쓸 수 있는 편한 환경이던데...

 현재 재직중인 직장에서 TmaxData의 Tibero4로 DBMS를 migration 및 신규 서비스 구축을 한다는 말씀을 드렸었나요? 음... 암튼 지금 그런 일이 진행되고 있습니다. 나름 대규모 작업이 진행중인데요.
국내 기업이다보니 버그나 기능 개선이 요구되면 그때그때 패치가 되고 있습니다. 이건 뭐 긍정적이라고 생각합니다. 아직 개선할 점이 많은게 문제이긴하지만 대응이 빠른 편이라고 생각합니다. 좋게좋게 생각해야죠.

 이번에 말씀드리려는건 현재 패치가 진행중이라고 알고있는데요. PSM(Oracle의 PL/SQL에 해당함)을 이용해서 함수(Function)를 만들어서 쓸때 생기는 문제입니다.

문제점 : select문장에서 만들어 놓은 함수를 실행시켰는데, 널(null) 값이 반환된다.

원인 : 함수안에서 실행되는 Query 문장이 인덱스를 타게되면 널(null) 값이 반환된다.

해결책 : 현재 패치 진행중이라고 한다. 일단 Full table scan하도록 힌트를 주면 됨.

 뭐... 패치 중이니까요... 곧 해결되겠죠.
 Tibero를 지원하는 Orange for Tibero 2009는 Tibero ODBC Driver가 설치되어 있어야 사용 가능하다.
문제는 티맥스 테크넷이나 홈페이지에서 관련 정보를 찾을 수 없었다는 점이고...

Orange for Tibero 2009를 제작한 웨어벨리 홈페이지에서 Tibero ODC Driver를 설치하는 방법을 찾았다.

1. 윈도우용 티베로가 설치된 디렉토리에서 client/lib 디렉토리에 있는 dll 파일 세개를 windows 디렉토리의 system32 디렉토리에 복사한다.
  libtbcli.dll, libtbertl.dll, libtscli.dll 이상의 세개 파일이다.

2. 윈도우의 컴맨드 창에서 티베로가 설치된 디렉토리의 client/bin 디렉토리도 이동하여
   odbc_driver_install.exe -i 를 입력한다.

D:\temp\tibero3\client\bin>odbc_driver_install.exe -i
Tibero ODBC Driver is being installed to [ C:\WINDOWS\system32 ]
<Caution!!> If you changed the driver path, you should remove all Tibero DSN's and add them again.

Success to INSTALL Tibero ODBC driver

이렇게 하고 Orange for Tibero 2009를 실행시키면 된다.

+ Recent posts