Database/MS-SQL | Posted by 아키텍처 2014. 1. 28. 17:15

데이터베이스 복원하기 스크립트

 
 

데이터베이스 복원하기 스크립트


-------------------------------------------------------------------

-- 파일의 존재여부를 체크하고

-------------------------------------------------------------------

DECLARE @FILE_NAME VARCHAR(100), @FILE_CHECK INT

SET @FILE_NAME = N'D:\DB_Share\JUUUN_' + CONVERT(VARCHAR, GETDATE(), 112) + '.bak'

--SET @FILE_NAME = N'D:\DB_Share\JUUUN_20140129.bak'


EXEC XP_FILEEXIST @FILE_NAME, @FILE_CHECK OUTPUT


-- PRINT @FILE_NAME

-- PRINT @FILE_CHECK


IF @FILE_CHECK <> 1 BEGIN

RETURN

END


--RESTORE HEADERONLY FROM DISK = @FILE_NAME

--RESTORE FILELISTONLY FROM DISK = @FILE_NAME


-------------------------------------------------------------------

-- 복원하기

-------------------------------------------------------------------

ALTER DATABASE [JUUUN] SET RESTRICTED_USER WITH ROLLBACK IMMEDIATE;


RESTORE DATABASE [JUUUN] 

FROM DISK = @FILE_NAME

WITH  FILE = 1, REPLACE

,  MOVE N'JUUUN_Data' TO N'D:\MSSQL\SQLData\JUUUN.mdf'

,  MOVE N'JUUUN_Log' TO N'D:\MSSQL\SQLLog\JUUUN_log.ldf'

,  NOUNLOAD,  STATS = 10;


ALTER DATABASE [JUUUN] SET MULTI_USER

go

 

-------------------------------------------------------------------

-- 만약 사용자 권한을 맞춰야 한다면...

-------------------------------------------------------------------

sp_change_users_login 'update_one', 'JJJ', 'JJJ'
go


Posted by 김준홍 (http://www.Juuun.com)