백업 히스토리 모니터링
- Version : SQL Server 2005, 2008, 2008R2, 2012
DBA의 역할 중에 가장 중요한 것이 무엇이라 생각하는가? 나는 백업이라 생각한다. 유능한 DBA는 튜닝을 잘하는 것도 중요하지만 장애나 재해 발생시 최대한 데이터 손실을 줄이기 위한 전략적 백업 설계도 매우 중요하다. 다른 포스팅에서 백업 전략 및 백업 종류에 대해서 알아 보았다.
그렇다면 백업의 히스토리에 대해서 고민해 본적은 있는가?
백업 히스토리가 어떤 정보를 포함하고 있는지, 왜 히스토리를 모니터링 해야하는지 한 번쯤 의문을 가져 보아야 할 것이다.
우선 백업 히스토리를 조회 할 수 있는 스크립트를 살펴 보자. 다음 스크립트를 실행하면 백업 히스토리 정보를 모니터링 할 수 있다.
SELECT A.DATABASE_NAME, B.PHYSICAL_DEVICE_NAME, CAST(A.BACKUP_SIZE/1000000 AS VARCHAR(14))+' '+'MB' AS BKSIZE, CAST (DATEDIFF(SECOND,A.BACKUP_START_DATE , A.BACKUP_FINISH_DATE)AS VARCHAR(4))+' '+'SECONDS' AS RUNTIME, A.BACKUP_START_DATE, CASE A.[TYPE] WHEN 'D' THEN 'FULL BACKUP' WHEN 'I' THEN 'DIFFERENTIAL BACKUP' WHEN 'L' THEN 'TRANSACTION LOG BACKUP' END AS BACKUPTYPE, A.SERVER_NAME, A.RECOVERY_MODEL FROM MSDB.DBO.BACKUPSET AS A INNER JOIN MSDB.DBO.BACKUPMEDIAFAMILY AS B ON A.MEDIA_SET_ID = B.MEDIA_SET_ID WHERE A.DATABASE_NAME = 'SW_TEST' ORDER BY DATABASE_NAME, BACKUP_START_DATE, BACKUP_FINISH_DATE |
위 그림에서 보듯이 백업 히스토리를 보면 다양한 정보를 확인 할 수 있다. 데이터베이스 이름부터 시작해서 백업파일의 물리적 경로, 백업 사이즈, 백업에 걸린 시간, 유형 등 많은 정보를 포함한다.
그렇다면 백업 히스토리 모니터링 정보를 통하여 우리는 무엇을 예측 할 수 있을까? DBA마다 관점은 다르겠지만 나의 경우에는 이렇게 생각한다.
- 백업 사이즈 증가량에 따른 디스크 수요량 예측 : 백업 사이즈의 증가량을 일별 산출하여 미래의 백업 보관 주기 및 필요 공간 확보를 예측 할 수 있다.
- 백업에 걸린 시간에 따라 디스크 성능 예측 : 디스크 성능 모니터링은 윈도우의 성능 모니터링을 통해서 더 많은 정보를 확인 할 수 있다. 내가 여기에서 말하고자 하는 것은 비슷한 크기의 데이터베이스를 백업하는데 평소보다 오래 걸린다면 디스크 성능에 문제가 있다는 것을 예측할 수 있지 않을까 하는 것이다.
- 백업 셋트 확인 : 전체 백업 이후 트랜잭션 로그 백업 순서가 잘 이루어 졌는지 실제 복원을 하지 않아도 백업 셋트를 예측 할 수 있다. 누군가 의도치 않은 트랜잭션로그 백업을 진행하고 그 파일을 삭제 하였다고 생각해 보라. 히스토리를 통하여 누락된 셋트를 예측 할 수 있지 않을까? (백업의 무결성을 뜻하는 것은 아님.)
[컬럼 설명]
컬럼명 | 설명 |
Name | 논리적 백업 이름 |
User_name | 백업을 수행한 사용자 |
Description | 백업에 대한 설명 |
First_lsn | 첫 번째 로그 시퀀스 번호 |
Last_lsn | 마지막 로그 시퀀스 번호 |
Checkpoint_lsn | 체크포인트 시퀀스 번호 |
Database_creation_date | 데이터베이스 생성 날짜 |
Compatibility_level | 호환성 수준 |
Machine_name | SQL Server의 서버명 |
Is_password_protected | 암호화 유무 |
Is_readonly | 읽기 전용 유무 |
Is_damaged | 백업 손상 유무 |
백업에 대한 모니터링도 다양한 방법을 통하여 확인 할 수 있다. 각자의 모니터링 방식은 다르겠지만 중요한건 백업이 잘 이루어지고 지속적인 모니터링이 중요하다는 것을 강조 하려 한다.
2012-11-09 / 강성욱 / http://sqlmvp.kr
'SQL Server > SQL Server Tip' 카테고리의 다른 글
복사 전용 백업(COPY ONLY BACKUP) (0) | 2015.07.17 |
---|---|
SQL Server 기본 백업 폴더 변경하기 (0) | 2015.07.17 |
백업 전략과 Differential Database Backup (0) | 2015.07.17 |
SQL Server Point in time recovery (0) | 2015.07.17 |
Striping SQL Server Database Backup (0) | 2015.07.17 |