我有一个备份数据库任务设置来完成所有用户数据库的完整备份。但是,我发现添加新数据库时,它们不会自动包含在备份计划中。
每次添加新数据库时,我都被迫打开计划,并选择“所有用户数据库单选按钮”并保存要添加到备份任务的新数据包。
此外,新数据库不会显示在备份任务的属性中的SelectedDatabases集合中。
有什么想法吗?
谢谢, 拉吉
答案 0 :(得分:1)
这是一个错误,已在SP3中修复,请参阅this document
答案 1 :(得分:0)
编写一个迭代所有数据库的SQL脚本,并安排作业定期运行此脚本 这是一个样本
declare cur_databases cursor
for select name from sysdatabases
where not name in ('master', 'model', 'tempdb', 'msdb')
declare @sql nvarchar(1000)
declare @name nvarchar(100)
open cur_databases
fetch cur_databases into @name
while (@@fetch_status = 0)
begin
select @sql = 'BACKUP DATABASE [' + @name + '] TO DISK = N''D:\Backup\' + @name + '.bak''' +
' WITH NOFORMAT, NOINIT, NAME = N''' + @name + ' Database Backup'', SKIP, NOREWIND, NOUNLOAD, STATS = 10 '
print @sql
exec (@sql)
fetch cur_databases into @name
end
close cur_databases
deallocate cur_databases
答案 2 :(得分:0)
您的计划配置有些奇怪,因为添加新数据库很好 - 下次计划运行时会自动获取它们。至少它在我照顾的服务器上。
谁是每个数据库的“所有者” - 是否可能是一个权限问题,导致您的作业无法看到这些新数据库,因为它们归其他用户所有?