2019년 7월 30일, SQLGate for CUBRID 버전이 출시되었습니다. 아래 SQLGate 홈페이지에서 출시내용을 자세히 확인할 수 있습니다.
지금부터 SQLGate for CUBRID로 CUBRID DB를 다뤄보고 활용해보겠습니다.
1. 설치
https://www.sqlgate.com/product/download 에 접속하여 SQLGate for CUBRID를 다운로드하고 실행하면 설치가 완료됩니다.
2. SQLGate for CUBRID 라이선스
CUBRID 또는 SQLGate 홈페이지에서 SQLGate for CUBRID 사용에 대한 라이선스를 확인할 수 있습니다.
라이선스 종류는 다음과 같으며 필요한 라이선스를 구입하여 사용하시기 바랍니다.
- 기업용 라이선스 보기(https://www.sqlgate.com/pricing/perpetual)
- 인디개발자 라이선스 보기(https://www.sqlgate.com/pricing/indieLicense)
- 구독 서비스 보기(https://www.sqlgate.com/pricing/subscription)
※무료 버전을 다운로드 받으시면 14일 동안 전체 기능을 경험해 볼 수 있습니다.
3. SQLGate 실행하기
- 가입한 이메일 주소로 로그인 한 뒤 확인을 클릭
4. 설치된 CUBRID DB서버에 접속하기
- 연결하고자 하는 정보들을 입력 후에 연결테스트를 시도하고, 연결을 수행하면 아래 그림과 같은 창이 실행됩니다.
5. 테이블 개체탐색기
- 객체 탐색기 버튼을 클릭하여 해당 DB서버의 테이블 목록과 정보들을 확인할 수 있고, 조건을 추가하여 원하는 데이터를 찾을 때도 사용할 수 있습니다.
비슷한 기능으로 객체패널(F12)을 활용할 수 있습니다.
6. SQL편집기를 활용
- 쿼리 작성 및 실행 시 SQLGate는 멀티쿼리/자동완성 기능을 제공하여 질의 작성이 용의합니다.
- 이 외에도 SQL 편집기에 다양한 기능들이 있으며, 아래 SQLGate 매뉴얼에서 확인할 수 있습니다.
https://docs.sqlgate.com/docs/ko/0202-using-editor.html
7. 질의 실행 계획 보기 및 튜닝하기
sql>SELECT /*+ recompile */ DISTINCT h.host_year, o.host_nation
FROM history h INNER JOIN olympic o ON h.host_year = o.host_year
AND o.host_year > 1950;
- 위 질의 실행 계획을 보면 history h 테이블이 Full Scan을 하며 inner table로 JOIN이 되고 있는 것을 확인됩니다. 데이터 양이 많아질 수록 성능에 영향을 줄 수 있으니,
조인 순서를 변경하고, 테이블에 INDEX SCAN을 하여 JOIN할 수 있도록 튜닝해보도록 하겠습니다.
7-1. 인덱스 생성
- CREATE INDEX 구문으로 인덱스를 생성하거나, 상단 탭에 [만들기]-[인덱스]를 누르고 GUI로 생성할 수 있습니다.
sql>CREATE INDEX cix_history_idx1 ON history (host_year);
7-2. 튜닝 후 질의실행 계획 확인
- 튜닝하고자 했던 대로 테이블 조인 순서가 변경되었고, INDEX SCAN이 이루어지면서 JOIN된 것을 확인 할 수 있습니다.
지금까지 SQLGate for CUBRID를 활용하여 질의를 수행해보고 튜닝을 해보는 방법을 알아보았습니다.
이 외에도 데이터 내보내기, 가져오기, PL/SQL 디버거, ER디자인 등 기능이 있으니 많이 활용해보시기 바랍니다.