db2 데이터베이스

개요
. 하나의 인스턴스에 한 개 이상의 데이터베이스 생성
. 데이터베이스 구성 파일을 이요하여 개별적인 환경 구성
. 3개의 기본 테이블 스페이스 : SYSCATSPACE, TEMPSPACE1, USERSPACE1
. SYSCATSPACE 테이블 스페이스에는 데이터베이스의 모든 오브젝트에 대한 정보를 저장하고 있는
메타 테이블인 시스템 카탈로그 테이블이 생성
. 데이터에 대한 변경 사항은 데이터베이스 트랜잭션 로그 파일에 기록
초기 3개의 기본 로그 파일과 2개의 보조 로그 파일이 생성
데이터베이스 구성 파일을 이용하여 로그 파일의 개수와 크기를 조절
데이터베이스 생성 및 제거
; 생성
# su - db2inst1
$ db2 "create db NEW_DB"
$ ls -al ~/$DB2INSTANCE/NODE*
$ db2 "create db NEW_DB on /database/db2data"
$ ls -al /database/db2data/$DB2INSTANCE/NODE*
;예제
$ db2 "create db NEW_DB automatic storage yes on /db2data"
; 확인
$ db2 list db directory
; CODESET, TERRITORY 지정
$ db2 "create db NEW_DB using codeset <CODESET> TERRITORY <국가코드>
$ db2 get db cfg for NEW_DB | grep <국가코드>
; 제거
$ db2stop
$ db2 drop db NEW_DB
접속 및 해제
; 접속
$ db2 connect to NEW_DB
$ db2 "select * from syscat.tables"
$ db2 "select current date from syscat.tables"
; 접속 해제
$ db2 connect reset

; 접속 내역 확인
$ db2 get connection state
응용프로그램
; 데이터베이스 접속된 응용 프로그램 정보
. 데이터베이스에 접속을 요청하면 db2agent가 생성되고 필요한 개별 메모리를 할당
$ db2 list applications
$ db2 list applications show detail
$ ps -ef |grep db2inst1 |grep db2agent
; 응용프로그램 강제 종료
. 접속한 응용프로그램은 connect reset 명령어로 접속 종료
. 응용 프로그램의 이름과 핸들 번호를 확인
$ db2 list applications show detail |more
$ db2 "force applications 71"
$ db2 "force applications 71, 72, 73"
$ db2 list applications show detial |more
. 모두 종료
$ db2 "force application all"
데이터베이스 목록
; 시스템 데이터베이스 목록
. 인스턴스에 등록된 모든 데이터베이스 목록을 시스템 데이터베이스 목록
지역 데이터베이스 및 등록된 원격 데이터베이스 목록을 모두 포함
$ db2 list db directory
; 지역 데이터베이스 목록
. 인스턴스에 실제로 존재하는 데이터베이스 중 특정한 디렉토리나 드라이브에 실제로 생성되어 있는
데이터베이스 목록
$ db2 list db directory on /home/db2inst1
$ ls -al /home/db2inst1
데이터베이스 주요 파일
; 데이터베이스 구성 파일 확인
$ db2 get db cfg for SAMPLE show detail
$ db2 connect reset
; 구성 변수 수정
$ db2 connect to SAMPLE
$ db2 update db cfg for SAMPLE usnig INDEXSORT YES
$ db2 connect reset

댓글

이 블로그의 인기 게시물

[ASP] ASP에서 오라클 DB연결 문의 - Microsoft OLE DB Provider for Oracle error '80004005'

db2 user 생성 및 권한 설정

[자바스크립트] 소수점 계산오류가 생길때 해결 방법