首先,我对 stackexchange 很陌生,所以请耐心等待。
我正在运行 SQL Server 9.0.4060。
我的问题是:我的 SQL Server 备份在很多数据库上一直失败。
维护计划运行到不同的备份作业:
每天 20:30 进行 DIFF 备份,每周日 20:30 进行 FULL 备份。
对于无法完成备份的每个数据库,我收到这两个错误:
Date 06-11-2012 20:31:06
Log SQL Server (Current - 07-11-2012 11:43:00)
Source Backup
Message
BACKUP failed to complete the command BACKUP DATABASE (dbname) WITH DIFFERENTIAL. Check the backup application log for detailed messages.
Date 06-11-2012 20:31:06
Log SQL Server (Current - 07-11-2012 11:43:00)
Source Backup
Message
Error: 3041, Severity: 16, State: 1.
Run Code Online (Sandbox Code Playgroud)
额外的错误。
Date 06-11-2012 17:53:27
Log SQL Server …Run Code Online (Sandbox Code Playgroud) 我希望你能指出我正确的方向。我不是 T-SQL 的常客,但我做了一些谷歌搜索,并找到了下面的脚本。我稍微修正了脚本。
我希望脚本:
剧本:
USE MASTER
declare
@isql varchar(2000),
@dbname varchar(64)
declare c1 cursor for select name from master..sysdatabases where name not in ('master','model','msdb','tempdb','ReportServer','ReportServerTempDB')
open c1
fetch next from c1 into @dbname
While @@fetch_status <> -1
begin
select @isql = 'ALTER DATABASE @dbname SET RECOVERY SIMPLE'
select @isql = replace(@isql,'@dbname',@dbname)
print @isql
exec(@isql)
select @isql='USE @dbname checkpoint'
select @isql = replace(@isql,'@dbname',@dbname)
print @isql
exec(@isql)
select @isql='DBCC SHRINKFILE @dbname.ldf'
select @isql …Run Code Online (Sandbox Code Playgroud) sql-server shrink sql-server-2012 transaction-log recovery-model