J'espère que vous pourrez m'orienter dans la bonne direction. Je ne suis pas un utilisateur fréquent de T-SQL, mais j'ai fait quelques recherches sur Google et j'ai trouvé le script ci-dessous. J'ai un peu corrigé le script.
Je veux que le script:
- Pour sélectionner toutes les bases de données, à l'exception des bases de données système.
- Pour définir la récupération sur simple.
- Pour réduire les fichiers journaux pour chaque base de données (.ldf), à l'exception de la base de données système
Le scénario:
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 = replace(@isql,'@dbname',@dbname)
print @isql
exec(@isql)
fetch next from c1 into @dbname
end
close c1
deallocate c1