다음과 같은 관리 작업을 매일 새벽 2시에 수행되도록 하고 싶습니다.

o 매일 새벽 2시
- 페이지당 빈 공간 비율을 10%로 하여 인덱스 페이지 다시 구성
- 데이터베이스가 50MB를 넘으면 축소후 데이터 공간의 10%에 해당하는 빈 공간만 유지하게

o 매일 새벽 3시
- DBCC CHECKDB를 이용하여 데이터베이스 무결성 점검

o 매일 새벽 4시
- 데이터베이스를 백업하되 해당일에 백업받은 파일을 별도의 폴더를 만들어 보관

o 매 3시간 간격
- 트랜잭션 로그 백업

o 기타
- 위 모든 작업의 결과를 보고서로 기록

위와 같은 관리를 위한 작업이 필요한 경우 각각의 작업을 만들어 스케쥴을 걸어주면 됩니다. 하지만 SQL 서버의 [데이터베이스 유지 관리 계획 마법사]를 이용하여 아주 쉽게 위와 같은 작업을 설정 할 수 있습니다. 이번 강좌에서는 이 방법에 대하여 살펴보도록 하겠습니다.

1. 데이터베이스 유지 관리 계획 마법사

[데이터베이스 유지 관리 계획 마법사]는 다양한 관리 작업을 손쉽게 설정 할 수 있는 방법을 제공하는 유익한 마법사입니다. 이 마법사를 이용하면 여러가지 작업을 특정 시간에 수행되도록 설정 할 수 있는데, 인덱스 재생성 및 데이터베이스 무결성 검사, 데이터베이스 백업 및 로그 백업 등과 같은 작업을 이 마법사를 통하여 예정된 시간에 수행되도록 자동화 할 수 있습니다.


[그림 1]

위 [그림 1]에서 처럼 [데이터베이스 유지 관리 계획] 마법사를 이용해서 등록된 유지 계획은 [관리] 부분에 위치하고 있습니다. 위 [그림 1]에서는 아직 관리 계획이 하나도 만들어진 상태가 아님을 알 수 있습니다.

2. 데이터베이스 유지 관리 계획 만들기

위 [그림 1]의 빨간색 박스 안의 [데이터베이스 유지 관리 계획] 위에서 마우스 오른쪽 버튼을 눌러 표시도는 단축 메뉴에서 "새 유지 관리 계획(P)"을 선택하거나, [도구] - [마법사] 에서 [관리] 부분의 "데이터베이스 유지관리 계획 마법사"를 수행하시면 됩니다. 그럼 다음 [그림 2]와 같이 초기 화면이 표시됩니다.


[그림 2]

1) 데이터베이스 선택

위 [그림 2] 에서 [다음] 버튼을 누르면 아래 [그림 3]과 같이 데이터베이스를 선택하는 화면이 나타납니다. 네가지 선택방법이 주어지는데, 특정 데이터베이스만을 선택하고자 하는 경우는 "데이터베이스 지정" 을 선택 하신 후 원하는 대상 데이터베이스를 선택하면 됩니다. 이 강좌에서는 Pubs 데이터베이스를 선택하여 진행하도록 하겠습니다.


[그림 3]

2) 데이터 최적화 정보 업데이트

위 [그림 3] 에서 [다음] 버튼을 누르면 아래 [그림 4]와같이 데이터 최적화 정보 업데이트 설정 화면이 나타납니다. 기본값은 아무것도 선택되지 않은 상태입니다. [그림 4]의 경우는 페이지당 빈공간을 10%로 하여 데이터와 인덱스 페이지를 재구성하도록 설정했으며 데이터베이스 파일 공간제거도 설정한 상태입니다. 그리고 이러한 작업이 매일 새벽 2시에 수행되도록 일정을 설정한 상태입니다.


[그림 4]

3) 데이터베이스 무결성 검사

위 [그림 4] 에서 [다음] 버튼을 누르면 아래 [그림 5]와 같이 데이터베이스 무결성 검사 설정 화면이 나타납니다. 기본값은 아무것도 선택되지 않은 상태입니다. [그림 5]의 경우는 인덱스를 제외한 데이터베이스 무결성 검사를 매일 새벽 3시에 수행하도록 설정한 상태입니다.


[그림 5]

4) 데이터베이스 백업 계획

위 [그림 5] 에서 [다음] 버튼을 누르면 아래 [그림 6]과같이 데이터베이스 백업 지정 화면이 나타납니다. [그림 6]의 경우는 매일 새벽 4시에 데이터베이스 백업을 디스크에 받도록 지정한 것입니다. 이때 디스크에 저장되는 방식은 [다음] 버튼을 눌러 진행하면 설정하게 됩니다.


[그림 6]

5) 백업 디스크 디렉터리 지정

위 [그림 6] 에서 백업을 선택하지 않았다면 다음 [그림 7]은 표시되지 않게 됩니다. [그림 7]에서는 E:\Data 폴더에 백업을 받되 데이터베이스마다 하위 디렉토리를 만들게 하였습니다. 즉 E:\Data\Pubs 폴더가 생성되게 됩니다. 여러개의 데이터베이스를 백업받는 경우에 관리를 용이하게 합니다. 그리고 백업받은 파일은 4주가 지나면 지워지게 했습니다. 또한 백업 파일의 확장자는 BAK으로 지정하였습니다.


[그림 7]

6) 트랜잭션 로그 백업 계획

위 [그림 7] 에서 [다음] 버튼을 누르면 아래 [그림 8]과 같이 트랜잭션 로그 백업 계획 지정 화면이 나타납니다. [그림 8]의 경우는 매일 3시간 간격으로 로그를 백업 받도록 설정한 상태입니다.

.


[그림 8]

7) 트랜잭션 로그 백업 디스크 디렉터리 지정

위 [그림 8] 에서 트랜잭션 백업을 선택하지 않았다면 다음 [그림 9]는표시되지 않게 됩니다. 트랜잭션 백업 파일의 확장자는 TRN으로 지정하였습니다.


[그림 9]

8) 생셩할 보고서

위 [그림 9] 에서 [다음] 버튼을 누르면 아래 [그림 10]과 같이 생성할 보고서 지정 화면이 나타납니다. [그림 10]의 경우는 E:\Data\Log 폴더 안에 보고서를 만들도록 했습니다. 그리고 4주가 지난 보고서는 자동으로 삭제되도록 하였습니다.


[그림 10]

9) 유지 관리 계획

위 [그림 10] 에서 [다음] 버튼을 누르면 아래 [그림 11]과 같이 유지 관리 계획 기록 지정 화면이 나타납니다.


[그림 11]

10) 완료

위 [그림 11] 에서 [다음] 버튼을 누르면 아래 [그림 12]와 같이 최종 확인 화면이 표시됩니다. 이 화면에서는 "계획 이름"에 적합한 이름을 지정해 주시면 됩니다. 이 이름이 위 [그림 1]의 우측 화면에 표시되게 됩니다. 설정이 잘못된 경우는 [뒤로] 버튼을 눌러 특정 부분의 설정을 다시 지정 할 수 있습니다. [마침] 버튼을 누르면 유지 계획 설정이 완료됩니다.


[그림 12]

다음 [그림 13]은 완료된 후의 모습니다.


[그림 13]

해당 유지 관리 계획은 언제 든지 수정이 가능합니다.

그리고 다음 [그림 14]는 위의 과정에 의해 자동으로 생성된 작업(Job)이 SQL 서버 에이젼트에 등록된 것을 보여 줍니다.


[그림 14]

3. 정리

상당히 많은 화면을 거치게 됩니다. 위 화면 중에서 필요로 하는 부분의 설정만을 통하여 원하는 관리 작업을 자동화 할 수 있습니다. 실습을 해보시는 겨우는 위 [그림 14] 처럼 등록된 작업의 세부 내용을 살펴 보시기 바랍니다.

이번 강좌에서는 자동화를 위한 또한가지의 방법으로 [데이터베이스 유지 관리 계획]에 대하여 살펴 보았습니다. 실제로 이 방법은 실무에서 많이 사용되는 방법중의 하나입니다. 위 내용들을 세밀하게 검토해서 실제 업무에 활용하여 보시기 바랍니다. 특히 확인 할 부분은 백업에서 설정된 내용대로 작업이 이루어진 후에 해당 폴더에 생성된 파일들이 어떤 이름으로 생셩되는지 하는 것입니다.

 

스폰서 링크 : http://www.mbcitschool.com

안정적인 DNS서비스 DNSEver DNS server, DNS service
Posted by 키르히아이스
,