SQL Server/SQL Server Tip

Striping SQL Server Database Backup

SungWookKang 2015. 7. 17. 10:02
반응형

Striping SQL Server Database Backup

 

  • Version : SQL Server 2000, 2005, 2008, 2008R2, 2012

 

데이터베이스를 운영하다 보면 데이터베이스의 용량이 큰 경우가 있다. 이때 백업 시간도 함께 커진다. 데이터베이스 용량이 매우 커서 백업 시간에 어려움이 있다면 스트라이프 백업을 이용하여 백업 시간 단축을 고려해 보자.

백업시 같은 디스크라도 사용자의 RAID 구성, 사용가능한 CPU 수에 따라 스트라이핑의 혜택을 볼 수 있다. (물론 물리적으로 다른 디스크를 사용한다면 IO분산에 더욱 효과적일 것이다.)

또한 네트워크 백업의 경우에도 NIC의 수에 따라 효과를 볼 수 있다.

 

자세한 내용은 SQLK CAT에 게시된 White Paper를 참고한다.

SQLCAT : http://sqlcat.com/sqlcat/b/whitepapers/archive/2009/08/13/a-technical-case-study-fast-and-reliable-backup-and-restore-of-a-vldb-over-the-network.aspx

 

이번 강좌에서는 SSMS를 사용한 스트라이프 백업/복원, 스크립트를 활용한 스트라이프 백업/복원의 방법을 알아 본다.

 

SSMS를 실행하여 백업을 선택 한다.

 

 

[데이터베이스 백업] 창이 나타나면 아래 그림처럼 [추가] 버튼을 눌러 백업 파일을 추가 한다.

 

백업을 실행하면 다음과 같이 추가한 리스트대로 백업파일이 생성된 것을 확인 할 수 있다. 스트라이프 백업이 진행된 것이므로 백업 파일이 하나라도 손상되지 않도록 주의 하자.

 

 

스크립트를 통한 백업 방법을 알아 보자. 다음과 같이 스크립트를 이용할 수 있다.

BACKUP DATABASE SW_TEST TO

DISK = 'D:\BACKUP\SW_TEST1.BAK',

DISK = 'D:\BACKUP\SW_TEST2.BAK',

DISK = 'D:\BACKUP\SW_TEST3.BAK'

WITH NOFORMAT, NOINIT,

NAME = 'SW_TEST BACKUP',

SKIP, NOREWIND, NOUNLOAD, STATS = 10

GO

 

 

 

SSMS를 이용한 복원 방법을 알아 보자. 다음과 같이 마우스 오른쪽 버튼을 클릭하여 [태스크] – [복원] – [데이터베이스]를 선택 한다.

 

 

[데이터베이스 복원]창이 나타나면 다음과 같이 [장치]를 선택하고 백업파일에서 [추가] 버튼을 클릭하여 해당 파일세트를 추가 한다.

 

 

복원할 백업 세트를 선택하여 확인을 클릭하여 복원을 완료 한다.

 

 

스크립트를 이용한 복원 방법을 알아 보자.

RESTORE DATABASE SW_TEST FROM

DISK = 'D:\BACKUP\SW_TEST1.BAK',

DISK = 'D:\BACKUP\SW_TEST2.BAK',

DISK = 'D:\BACKUP\SW_TEST3.BAK'

WITH REPLACE, FILE = 1, NOUNLOAD, STATS = 10

GO

 

 

백업을 할 때에는 가급적 다른 물리적인 디스크에 기록하는 것이 IO에 효과적이며 RAID를 효과적으로 구성하여 사용하도록 하자.

 

2012-11-06 / 강성욱 / http://sqlmvp.kr

 

반응형