데이터베이스 백업과 유효성 체크
-- Backup Database BACKUP DATABASE [TESTDB] TO DISK = N'D:\MSSQLEXPR\BACKUP\TESTDB.bak' WITH DESCRIPTION = N'설명', NAME = N'TESTDB-전체 데이터베이스 백업', SKIP, -- 만료일 무시 STATS = 10 -- 진행률 표시(%)
GO -- Verifying Backup file DECLARE @BACKUPSETID AS INT SELECT @BACKUPSETID = POSITION FROM MSDB..BACKUPSET WHERE DATABASE_NAME=N'TESTDB' AND BACKUP_SET_ID=(SELECT MAX(BACKUP_SET_ID) FROM MSDB..BACKUPSET WHERE DATABASE_NAME=N'TESTDB' ) IF @BACKUPSETID IS NULL BEGIN RAISERROR(N'확인하지 못했습니다. 데이터베이스 ''TESTDB''에 대한 백업 정보를 찾을 수 없습니다.', 16, 1) END
RESTORE VERIFYONLY FROM DISK = N'D:\MSSQLEXPR\BACKUP\TESTDB.BAK' WITH FILE = @BACKUPSETID, NOUNLOAD, NOREWIND
GO |
데이터베이스 복원
RESTORE DATABASE [TESTDB] FROM DISK = N'D:\MSSQLEXPR\BACKUP\TESTDB.bak' -- 백업파일원본 WITH FILE = 1, MOVE N'TESTDB' TO N'D:\MSSQLEXPR\DATA\TESTDB.MDF', -- MDF 경로 MOVE N'TESTDB_log' TO N'D:\MSSQLEXPR\LOGS\TESTDB.LDF', -- LDF 경로 REPLACE, -- 덮어쓰기 STATS = 10 -- 진행률 표시(%)
GO |