一.完整备份、差异备份和事务日志备份的脚本
--完整备份数据库
BACKUP DATABASE Test_Bak TO DISK = 'E:\20150609_75\bak\Test_bak_full.bak' WITH INIT
--差异备份数据库
BACKUP DATABASE Test_Bak TO DISK = 'E:\20150609_75\bak\Test_bak_diff.bak' WITH INIT, DIFFERENTIAL --加上DIFFERENTIAL代表差异备份
--事务日志备份
BACKUP LOG Test_Bak TO DISK = 'E:\20150609_75\bak\Test_bak_log.bak' WITH INIT --BACKUP LOG表示备份事务日志,BACKUP DATABASE表示完整或差异备份
--备份事务日志,文件名中包含当前时间,适合定时备份
DECLARE @strbackup NVARCHAR(100) --改为日期加时间的 SET @strbackup = 'E:\20150609_75\bak\Test_bak_log_' + REPLACE(REPLACE(REPLACE(CONVERT(VARCHAR, GETDATE(), 120), '-', ''), ' ', ''), ':', '') + '.bak' BACKUP LOG Test_Bak TO DISK = @strbackup WITH INIT; GO
二. 还原需要修改数据文件路径的多文件数据库(做过分区的)
错误:
上面错误的原因为:原来备份的数据文件在G盘下,还原完整备份时新服务器下不存在G盘这个路径就会报错。
解决办法:可以使用WITH MOVE让数据文件保存到新的有效路径下,首先在磁盘下建立这个有效路径。
正确的还原多文件备份的方法如下:
方法1(脚本):
还原完整备份:

本文详细介绍了如何在SQL Server中进行完整备份、差异备份和事务日志备份,以及在不同情况下如何正确还原。重点讨论了数据文件路径改变时的还原策略,包括使用WITH MOVE选项来指定新路径,并提供了脚本和GUI操作的实例。

4239

被折叠的 条评论
为什么被折叠?



