DAS 에 대한 블로그 글에 Windows 작업 스케줄러에서 DB2 자동화 방법에 대한 문의가 있었다. 최근 Windows 용 DB2를 설치했던 고객사에서도 관련하여 문의가 왔었다. 인터넷에서 관련 자료 검색이 잘 안되었나 하는 생각이 들기도 하여 블로그에 남겨 본다.
Windows XP에서 작업 스케줄러를 설정하는 것과 Windows 7 혹은 Vista 혹은 2008 Server에서 설정하는 방법이 약간 다르다.
DB2 관련 작업을 자동화하기 위해 개인적으로 2개의 파일을 만들어서 설정을 했다.
### XP 및 Windows 2003 서버의 경우 ####
1. cmd 파일 (파일명 예: backup.cmd)
db2cmd /w /c /i db2 -tf backup.sql >> bak.txt |
작업 스케줄러에서 backup.cmd 파일을 등록해서 실행시키면 된다.
실행여부는 bak.txt 로그 파일을 통해 수행 여부를 확인하면 된다.
2. db2 파일 (파일명 예: backup.db2)
파일 확장자는 임의적이다.
!db2 "connect to sample" ; !db2 "quiesce db immediate force connections" ; !db2 "terminate" ; !db2 "backup db sample to 'C:\'" ; !db2 "connect to sample" ; !db2 "unquiesce db" ; !db2 "terminate" ; |
위 명령어는 Offline Backup을 받기 위해서 DB에 접속된 연결을 강제 제거하여 DB를 비활성화(offline)시킨 후 백업을 수행하도록 쓰여졌다. (! 는 OS 레벨에서 수행되도록 하기 위한 DB2 환경에서의 escape 문자이다)
### Vista 이상 및 Windows 2008 서버의 경우 ####
작업 스케줄러 등록 방식이 바뀌었다.
시작 > 관리도구 > 작업 스케줄러 > 작업만들기 (창의 오른쪽 패널의 “작업”에 “작업 만들기” 선택)
* 동작 Tab > 새로만들기
- 프로그램/스크립트
“C:\Program Files (x86)\IBM\SQLLIB\BIN\db2cmd.exe |
- 인수 추가
db2 –tvf listdb1.db2 listdb1.db2 Script !db2 "list db directory" >> db2list1.txt ; |
- 시작 위치 : listdb1.db2 위치
'Note' 카테고리의 다른 글
[이관] IBM에서 제공하는 DBMS Migration 도구들 (0) | 2012.03.20 |
---|---|
[관리] Application에서 실행 중인 SQL 확인 (0) | 2012.03.12 |
[SQL] Oracle 호환성에 따른 date 값의 차이점 (0) | 2012.02.22 |
[관리] DB2 설정정보 백업방법과 그 활용 (0) | 2012.01.09 |
[SQL] 집계함수 listagg() (0) | 2012.01.05 |