japanese site
온라인강좌책메일다운로드동아리쇼핑기술지원기업정보갤러리동영상 블로그
『신개념 4단계 리눅스기술지원 시스템 공개』

※ 『무료 리눅스 배포판 배송서비스』 ※

※ 게시판 용도에 맞지 않는 글(광고및 홍보 글 등)은 임의삭제될 수 있습니다.

 
작성일 : 09-11-17 17:51
[CUBRID] - CSQL 인터프리터
 글쓴이 : 문학청년
조회 : 2,145  
본 문서에서는 CUBRID(큐브리드)의 CSQL을 소개하고 간단하게 사용해보는 방법을 소개합니다.



CSQL 인터프리터



CSQL 인터프리터 소개


SQL 사용을 위한 도구

CSQL 인터프리터는 CUBRID와 함께 설치되는 대화형(interactive) 방식과 일괄 수행(batch) 방식으로 SQL 질의를 수행하고 수행 결과를 조회할 수 있는 프로그램이다. CSQL 인터프리터는 명령어 라인 입력 방식의 인터페이스를 제공하며, 입력된 SQL 문장과 그 결과는 나중에 사용하기 위해서 파일에 저장할 수도 있다.

CSQL 인터프리터는 CUBRID를 사용하는 가장 기본적이고 손쉬운 방법이다. CUBRID를 사용하는데 제공되는 다양한 API(JDBC, ODBC, PHP, CCI 등)를 활용하여 데이터베이스 응용 프로그램을 작성할 수 있다. 또한, CUBRID에서 제공하는 관리 및 질의 도구인 CUBRID 매니저를 사용할 수도 있다. 사용자는 CSQL 인터프리터가 제공하는 터미널 기반의 환경에서 SQL 질의를 생성하고, 수행 결과를 조회할 수 있다.

CSQL 인터프리터는 CUBRID 데이터베이스에 접속하여 SQL 문을 통해 다양한 작업을 수행한다. CSQL 인터프리터를 이용해 다음과 같은 작업을 수행할 수 있다.



  • SQL 문을 이용하여 데이터베이스 조회, 갱신, 삭제 등의 작업
  • 외부 셸 명령 실행
  • 조회 결과의 저장 혹은 출력
  • SQL 스크립트 파일의 작성 및 실행
  • 테이블 스키마 조회
  • 데이터베이스 서버 시스템 파라미터의 조회 및 변경
  • 다양한 데이터베이스 정보(스키마, 트리거, 지연 트리거, workspace, 잠금, 통계) 조회

DBA를 위한 도구

DBA(Database Administrator)는 일상적인 많은 관리 업무를 수행하기 위해서 CUBRID가 설치된 시스템에 접속해서 CUBRID가 제공하는 다양한 관리 유틸리티를 이용해서 작업을 수행한다. 따라서, 터미널 기반의 인터페이스를 제공하는 CSQL 인터프리터는 DBA가 데이터베이스 관리 업무를 수행하는데 유용하게 사용된다. 또한, CSQL 인터프리터는 DBA에게 필요한 다양한 데이터베이스 정보를 제공한다.

CSQL 인터프리터는 독립 모드(Standalone Mode)로 실행될 수도 있다. 독립 실행 모드는 CSQL 인터프리터가 서버 프로세스의 기능을 포함하여 직접 데이터베이스 파일에 접근하여 수행하는 방식이다. 즉 별도의 데이터베이스 서버 프로세스가 구동되어 있지 않은 상태에서 해당 데이터베이스를 대상으로 SQL 문을 실행할 수 있다. CSQL 인터프리터는 데이터베이스 서버나 브로커 등 어떠한 다른 프로그램의 도움 없이 csql 유틸리티 하나로 데이터베이스를 이용할 수 있는 강력한 수단이다.




CSQL 실행 모드


SQL 사용을 위한 도구

CSQL 인터프리터는 데이터베이스에서 스키마 또는 데이터를 다루기 위한 SQL 문을 입력하고 수행할 수 있다. csql 유틸리티를 실행하면 나타나는 프롬프트에 사용자는 구문을 입력한다. 구문을 입력한 후 실행하면 다음 라인에 결과가 표시되는데, 이를 대화형 모드라고 한다.




일괄 수행 모드(Batch Mode)

사용자는 원하는 SQL 문을 임의의 파일에 저장한 후 csql 유틸리티가 해당 파일을 읽도록 구문을 실행할 수 있다. 이를 일괄 수행(배치형) 모드라고 한다. 일괄 수행 모드에 대한 자세한 내용은 "CSQL 시작 옵션"을 참조한다.




독립 모드(Standalone Mode)

독립 실행 모드는 CSQL 인터프리터가 서버 프로세스의 기능을 포함하여 직접 데이터베이스 파일에 접근하여 수행하는 방식이다. 즉 별도의 데이터베이스 서버 프로세스가 구동되어 있지 않은 상태에서 해당 데이터베이스를 대상으로 SQL 문을 실행할 수 있다. 독립 모드는 동시에 한 사용자만이 접근이 가능하므로 DBA(Database Administrator)가 관리 작업을 위해 수행하는데 적합한 모드이다.




클라이언트/서버 모드(Client/Server Mode)

클라이언트/서버 모드는 일반적으로 해당 CSQL 인터프리터가 클라이언트 프로세스로 동작하여 데이터베이스 서버 프로세스에 접속하는 방식으로 사용되는 모드이다.




CSQL 사용법(구문)


로컬 호스트에서 실행

csql 유틸리티를 사용하여 CSQL 인터프리터를 실행한다. 이 때, 필요에 따라 옵션을 설정할 수 있으며, 옵션을 설정하려면 접속하려는 데이터베이스 이름을 인수로 지정한다. 다음은 로컬 서버에 위치한 데이터베이스에 접속하는 csql 유틸리티 구문이다.




구문

csql [ options ] database_name 


예제



원격 호스트에서 실행

다음은 원격 호스트에 위치한 데이터베이스에 접속하는 csql 유틸리티 구문이다.




구문

csql [ options ] database_name@remote_host_name 


  단, 원격 호스트에서 CSQL 인터프리터를 실행하려면 다음 사항이 선행되어야 한다.
  • 원격 호스트와 로컬 호스트에 설치된 CUBRID는 동일한 버전이어야 한다.
  • 원격 호스트와 로컬 호스트의 마스터 프로세스가 사용하는 포트 번호가 동일해야 한다.
  • -C 옵션을 사용하여 클라이언트/서버 모드로 원격 호스트에 접속해야 한다.

예제

다음은 192.168.1.3 위치의 원격 호스트에 존재하는 demodb에 접속하여 csql 유틸리티를 호출하는 예제이다.


csql -C demodb@192.168.1.3 


세션 명령어

CSQL 인터프리터에는 SQL 문 이외에 CSQL 인터프리터를 제어하는 특별한 명령어가 있으며 이를 세션 명령어라고 한다. 모든 세션 명령어는 반드시 세미콜론(;)으로 시작해야 한다.




CSQL 인터프리터 종료(;Exit)

csql> ;ex 


SQL 문 실행(;Run)

csql> ;ru 


SQL문 실행 후 명령어 버퍼 초기화(;Xrun)

csql> ;x 


자동 승인 모드 설정(;AUtocommit)

csql> ;au off 
AUTOCOMMIT IS OFF 


대상 데이터베이스 이름 출력(;DATAbase)

csql> ;sc event <?XML:NAMESPACE PREFIX = HELP /><?XML:NAMESPACE PREFIX = HELP /><?XML:NAMESPACE PREFIX = HELP />
  
     event 
  
     code           INTEGER NOT NULL 
     sports         CHARACTER VARYING(50) 
     name           CHARACTER VARYING(50) 
     gender         CHARACTER(1) 
     players        INTEGER 
  
     PRIMARY KEY pk_event_event_code ON event (code) 

 

 

         세션 명령어에 대한 자세한 정보는 아래 링크를 참조한다.

 

http://www.cubrid.com/online_manual/cubrid_820/csql/csql_sessioncommand.htm


이 글을 트위터로 보내기 이 글을 페이스북으로 보내기

 
   
 


『신개념 4단계 리눅스기술지원 시스템 공개』

CentOS 리눅스 전문서적 국내최초출시

 
회사소개 | 보도기사 | 채용안내 | 광고안내 | 이용약관 | 개인정보취급방침 | 책임한계와 법적고지 | 불편사항 신고하기 | 사이트맵
ㅇ 서울 : 서울특별시 강남구 노현로79길 66, 402호(역삼동,청송빌딩)  ㅇ 부산 : 부산광역시 해운대구 우동 1470 에이스하이테크21 914호
ㅇ 대표 : 1544-8128 ㅇ부산직통 : 051-744-0077 ㅇ서울직통 : 02-856-0055 ㅇ FAX : 02-6280-2663
ㅇ 사업자번호 : 128-86-68239 ㅇ 통신판매업 신고번호 : 2013-부산금정-0035호 ㅇ 개인정보책임자 : 이재석
ㅇ 상호명 : (주) 수퍼유저 ㅇ 대표자 : 박성수
Copyright ⓒ (주)수퍼유저. All rights reserved.

 아 이 디
 비밀번호
회원 가입 | 비밀번호 찾기

블로그~
 
▷ 질문과 답변
리눅스
서버해킹/보안
네트워크
아파치
메일서버
DNS
PHP
JSP
MySQL
큐브리드
Oracle
MRTG
SMS
Weblog
Domain
S/W
하드웨어
책제목
리눅스서버관리실무바이블v3.0


저자 박성수
페이지수 2,032 pages
펴낸곳(주)수퍼유저

리눅스 서버 구축 및 관리에 필요한 거의 모든 부분과 전반적인 실무 기법들을 다루고 있음
책제목
리눅스보안관리실무(2/E)


저자홍석범
페이지수 820 pages
펴낸곳(주)수퍼유저

리눅스 보안에 관련된 내용을 종합적으로 쓴 책. 저자의 명성 그대로 보안관련의 모든 내용이 그대로 담겨져 있다.