데이터베이스 개발자 Tip & 강좌

SQLER의 개발자들이 만들어가는 데이터베이스 사용자 Tip & 강좌 게시판입니다. SQL서버, Oracle, MySQL 등 여러 클라우드/오픈소스 기반 데이터베이스 개발 및 운영 관련 팁과 쿼리 노하우를 이곳에서 가장 먼저 접하실 수 있습니다. 많은 도움 되시길 바랍니다.

데이터베이스 미러 백업

jevida(강성욱) 2016.09.13 06:44 Views : 1313

데이터베이스 미러 백업

 

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

 

데이터베이스 백업 파일이 손상되어 매우 난처한 상황을 겪어 본 적이 있을 것이다. 이러한 이슈를 방지하기 위하여 대부분의 DBA들은 1차 로컬 백업을 하고 2차, 3차 백업으로 로컬의 백업 파일을 다른 미디어로 복사해서 보관한다. SQL Server에서는 백업할 때 하나의 미디어가 아닌 여러 미디어에 동일한 백업세트를 생성 할 수 있다.

SQL Server 2005 이상 Enterprise Edition 에서 가능하다.

미러된 미디어 세트는 복사본(미러)으로 구성 된다.

미디어 세트에는 미디어 패밀리가 하나 이상 포함되어 있으며 각각은 백업 장치에 해당한다.

MIRROR TO 절은 최대 3개 까지 포함할 수 있다.(즉 4대의 미러세트를 만들 수 있다.)

 

자세한 내용은 MSDN 사이트 참고 :

 

 

미러 백업은 SSMS의 UI메뉴를 찾을 수가 없었다.(UI메뉴를 지원하지 않거나 내가 찾이 못하였을 수도 있다.) 그래서 스크립트로 진행하도록 한다.

 

다음 스크립트를 이용하여 미러 백업 세트를 생성한다. 이때 FORMAT 옵션을 사용하여 새로운 미러 세트를 생성해야 한다.

BACKUP DATABASE SW_TEST TO DISK = 'D:\SQL_BACKUP\SW_TEST_FULL_1.BAK'

MIRROR TO DISK = 'D:\SQL_BACKUP\SW_TEST_FULL_2.BAK'

MIRROR TO DISK = 'D:\SQL_BACKUP\SW_TEST_FULL_3.BAK'

WITH DIFFERENTIAL

 

 

미러 백업에서 MIRROR TO 절은 최대 3개까지 사용가능 하다고 하였다.

즉 기존 백업을 포함하여 총 4개의 백업 세트까지 사용가능 하다.

 

 

다음과 같이 백업 파일이 생성된 것을 확인 할 수 있다.

 

 

차등 백업을 사용하는 경우라면 차등 백업 또한 기존 미러 세트와 동일하게 진행 하면 된다. 이때 백업파일의 이름을 이름과 동일하게 지정한다.

 

 

트랜잭션 로그 백업 또한 차등백업과 동일하다.

 

 

미러된 백업파일이 정상적인지 확인한다. VERIFYONLY를 통하여 복원을 하지 않고도 백업 세트가 완성되었는지, 전체 백업을 읽을 수 있는지 확인 할 수 있다.

 

 

미러된 백업 세트를 이용하여 데이터베이스를 복원하자. 다음의 시나리오는 전체 백업파일은 2번의 파일에서, 차등 백업은 1번 파일에서, 로그백업은 3번 파일에서 복원하는 시나리오 이다.

 

 

 

트랜잭션 로그의 경우에는 비즈니스 환경에 따라 자주 백업을 받아야 하는데 기존 미러 세트에 추가하여 사용하다 보니 원본의 파일이 매우 커지게 되는 듯 하다. (로그 백업 파일 이름을 다르게 하면 새로운 세트를 만들어야 한다는 경고가 발생 한다 백업 세트가 틀려지면 복원이 되지 않는다.) 비즈니스 환경을 잘 고려하여 다양한 백업 전략을 사용하자.



강성욱 / jevida@naver.com

Microsoft SQL Server MVP

Blog : http://sqlmvp.kr

Facebook : http://facebook.com/sqlmvp

No. Subject Author Date Views
1691 SQL Server에 연결된 어플리케이션 드라이버 버전 확인 jevida(강성욱) 2016.09.13 884
1690 SQL Server 성능 대시보드 jevida(강성욱) 2016.09.13 2216
1689 SSMS를 이용한 데이터베이스 복사 하기 jevida(강성욱) 2016.09.13 11537
1688 SQL Server에서 DB2 링크드 서버 연결 방법 jevida(강성욱) 2016.09.13 3288
1687 SQL Server 인덱스 활성 / 비활성 하기 jevida(강성욱) 2016.09.13 2352
1686 파티션 오프셋과 SQL Server에 대한 디스크 할당 단위 크기 jevida(강성욱) 2016.09.13 1687
1685 Read the End of a Large Error Log (에러로그 끝 부분 읽기) jevida(강성욱) 2016.09.13 1299
1684 데이터베이스 여유공간 확인 jevida(강성욱) 2016.09.13 1445
1683 FILE GROUP 간 데이터 이동 jevida(강성욱) 2016.09.13 1601
1682 문서화 되지 않은 sys.fn_PhysLocFormatter 함수 jevida(강성욱) 2016.09.13 948
1681 SQL Server 관리자 전용 연결(DAC) jevida(강성욱) 2016.09.13 3390
1680 파일 접근 권한으로 인한 DB복원 실패 작업 해결하기 jevida(강성욱) 2016.09.13 1934
1679 DBCC CHECKDB 실행과 히스토리 관리 jevida(강성욱) 2016.09.13 1846
1678 MDF를 이용한 데이터베이스 복원 jevida(강성욱) 2016.09.13 1174
1677 EventID 3041 Error jevida(강성욱) 2016.09.13 1417
» 데이터베이스 미러 백업 jevida(강성욱) 2016.09.13 1313
1675 SNAPSHOT을 이용한 SQL Server 복원 jevida(강성욱) 2016.09.13 2314
1674 복사 전용 백업(COPY ONLY BACKUP) jevida(강성욱) 2016.09.13 3375
1673 SQL Server 기본 백업 폴더 변경하기 jevida(강성욱) 2016.09.13 4066
1672 sp_helpindex 의 향상된 버전 minsouk 2016.05.17 4562





XE Login