1. 程式人生 > >SQL按月備份與還原

SQL按月備份與還原

SQL

----------------------------------------------備份數據庫-----------------------------------------------------------------------
USE [master]
GO
ALTER DATABASE [TEST] SET RECOVERY SIMPLE WITH NO_WAIT --簡單

USE [TEST]
go
DBCC SHRINKFILE (N‘Leader_Log‘ , 0, TRUNCATEONLY) --縮日誌

USE [master]
GO
ALTER DATABASE [TEST] SET RECOVERY FULL WITH NO_WAIT --完整

declare
@RiQi varchar(6),
@LuJing varchar(200),
@Path varchar(200)
set @Path = ‘\DC01\Buckups$\‘ --用鏡像賬號網絡共享存儲
set @RiQi = (select CONVERT(varchar(4),DATEPART(YEAR,getdate())) + CONVERT(varchar(2),DATEPART(mm,getdate())))
set @LuJing = @Path + @RiQi + ‘TEST.bak‘
backup database TEST to disk=@LuJing with init

declare
@RiQi varchar(6),
@LuJing varchar(200),
@Path varchar(200)
set @Path = ‘\DC01\Buckups$\‘
set @RiQi = (select CONVERT(varchar(4),DATEPART(YEAR,getdate())) + CONVERT(varchar(2),DATEPART(mm,getdate())))
set @LuJing = @Path + @RiQi + ‘TEST.bak‘
backup log TEST to disk=@LuJing

-----------------------------------------------查看備份文件--------------------------------------------------------------------------------------

restore headeronly from disk=‘\DC01\Buckups$\20183TEST.bak‘

-----------------------------------------------還原數據庫----------------------------------------------------------------------

restore database TEST from disk=‘\DC01\Buckups$\TEST.bak‘ with file=1,replace,norecovery --第一個完整還原
restore log TEST from disk=‘\DC01\Buckups$\20183TEST.bak‘ with file=2,replace,norecovery --第二個日誌還原
restore log TEST from disk=‘\DC01\Buckups$\20183TEST.bak‘ with file=3,replace,recovery --最後一個日誌還原

SQL按月備份與還原