백업 히스토리 모니터링

jevida(강성욱) 2015.03.31 08:49 Views : 11649

백업 히스토리 모니터링

 

  • 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마다 관점은 다르겠지만 나의 경우에는 이렇게 생각한다.

  1. 백업 사이즈 증가량에 따른 디스크 수요량 예측 : 백업 사이즈의 증가량을 일별 산출하여 미래의 백업 보관 주기 및 필요 공간 확보를 예측 할 수 있다.
  2. 백업에 걸린 시간에 따라 디스크 성능 예측 : 디스크 성능 모니터링은 윈도우의 성능 모니터링을 통해서 더 많은 정보를 확인 할 수 있다. 내가 여기에서 말하고자 하는 것은 비슷한 크기의 데이터베이스를 백업하는데 평소보다 오래 걸린다면 디스크 성능에 문제가 있다는 것을 예측할 수 있지 않을까 하는 것이다.
  3. 백업 셋트 확인 : 전체 백업 이후 트랜잭션 로그 백업 순서가 잘 이루어 졌는지 실제 복원을 하지 않아도 백업 셋트를 예측 할 수 있다. 누군가 의도치 않은 트랜잭션로그 백업을 진행하고 그 파일을 삭제 하였다고 생각해 보라. 히스토리를 통하여 누락된 셋트를 예측 할 수 있지 않을까? (백업의 무결성을 뜻하는 것은 아님.)

 

[컬럼 설명]

컬럼명

설명

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

백업 손상 유무

 

 

백업에 대한 모니터링도 다양한 방법을 통하여 확인 할 수 있다. 각자의 모니터링 방식은 다르겠지만 중요한건 백업이 잘 이루어지고 지속적인 모니터링이 중요하다는 것을 강조 하려 한다. 


강성욱 / jevida@naver.com
Microsoft SQL Server MVP
Blog : http://sqlmvp.kr
Facebook : http://facebook.com/sqlmvp



No. Subject Author Date Views
Notice 2023년 1월 - SQLER의 업데이트 강좌 리스트 코난(김대우) 2023.01.02 1241
1666 Event Session을 이용한 Memory Health check jevida(강성욱) 2016.01.11 6967
1665 Event Session을 이용한 CPU Health check jevida(강성욱) 2016.01.11 8466
1664 DMV를 이용한 I/O Health check jevida(강성욱) 2016.01.11 7361
1663 CONCAT 함수 (문자열 연결하기)와 주의 사항 jevida(강성욱) 2016.01.11 28094
1662 SQL Server 2012 Columnstore Index jevida(강성욱) 2016.01.11 7578
1661 SQL Server 2012 File Stream / Table 관련 DMV jevida(강성욱) 2016.01.11 4887
1660 SQL Server2012 DMV – 메모리 덤프, 서비스, 구성 확인 jevida(강성욱) 2016.01.11 4817
1659 SQL Server2012 향상된 디버깅 기능 jevida(강성욱) 2016.01.11 4411
1658 SQL Server2012 매개 변수 구성 jevida(강성욱) 2016.01.11 3513
1657 SQL Server2012 도움말 설치 jevida(강성욱) 2016.01.11 3483
1656 SQL Server2012 Checkpoint 제어 jevida(강성욱) 2016.01.11 5356
1655 SSIS 패지키의 메타데이터 유효성 검사 중지하기 jevida(강성욱) 2016.01.11 2985
1654 SSIS 로그 보관기간 설정 (CleanUp 기간 설정) jevida(강성욱) 2016.01.11 4343
1653 SSIS 패키지 보호 레벨 jevida(강성욱) 2016.01.11 3905
1652 DATABASE의 TABLE 및 COLUMN COMMENT 출력 joe 2015.09.10 7784
» 백업 히스토리 모니터링 jevida(강성욱) 2015.03.31 11649
1650 백업 전략과 Differential Database Backup jevida(강성욱) 2015.03.31 11244
1649 SQL ServerPoint in time recovery jevida(강성욱) 2015.03.31 9071
1648 Striping SQL Server Database Backup jevida(강성욱) 2015.03.31 8708
1647 SQL 서버 감사가 있는 데이터베이스 복원 후 설정 jevida(강성욱) 2015.03.31 11926





XE Login