featur

[MSSQL] 전체 백업 (FULL BACKUP) 본문

개발/MSSQL

[MSSQL] 전체 백업 (FULL BACKUP)

featur 2016. 12. 21. 10:02


[MSSQL] 전체 백업 (FULL BACKUP)




SQL DB서버에서 disk공간 부족 현상이 발생하였습니다. .mdf 파일은 300MB 수준인데… .ldf 파일이 무려 30GB 넘는 size를

차지하고 있었습니다. shrink 문을 날려도 줄지도 않았으며, 트랜잭션 로그파일이 차게 되면 insert, select, delete 등 select를

제외한 아무 작업도 되지 않습니다.


   


1. SQL Server DBA가 수행해야 할 세가지 백업


DB가 손상되었거나, 깨졌을 경우를 대비하여, DBA는 다음의 세가지 백업을 수행해야 합니다.

full, differential, transaction log 백업

   


1) Full Backup


말 그대로 풀 백업입니다. .mdf 파일에 들어있는 모든 데이터를 백업 받습니다. 그런데 풀 백업이 이루어지는 동안에도 트랜잭

션이 계속 진행되기 때문에 실제로는 아직 commit되지 않은 작업이 백업 시 포함될 수 있습니다. 나중에 이 백업을 리스토어

했을 때 commit되지 않은 데이터가 들어있다면 좀 이상해지겠죠? 그래서 실제로 풀 백업을 받을 때는 현재 진행중인 트랜잭션

에 대한 트랜잭션 로그도 함께 백업됩니다. 풀 백업이 없다면, Differential Backup이나 트랜잭션 로그 백업을 받았어도, 아무

소용이 없습니다.


   

1. HDD로 풀백업을 수행하는 SQL 구문입니다.


Use master

go

   

BACKUP DATABASE mydatabase1 to DISK = 'c:\temp\mydatabase1_bak'



   


2. Full 백업 받은 파일






Comments