Advertisement
private775

[SQL] MS SQL - shrink all log files

Oct 2nd, 2018
380
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
T-SQL 0.66 KB | None | 0 0
  1. USE [master]
  2. DECLARE @dbname NVARCHAR(MAX) -- database name  
  3. DECLARE @logname NVARCHAR(MAX) -- log name  
  4.  
  5.  
  6. declare db_cursor CURSOR FOR  
  7. select f.name as logname, d.name as dbname
  8. from sys.master_files f
  9. inner join sys.databases d on f.database_id = d.database_id
  10. where f.type_desc = 'LOG'
  11. and f.file_guid is not null
  12.  
  13. OPEN db_cursor  
  14. FETCH NEXT FROM db_cursor INTO @logname, @dbname
  15.  
  16.  
  17. WHILE @@FETCH_STATUS = 0  
  18. BEGIN  
  19.     PRINT 'use [' + @dbname + '];'
  20.     PRINT 'go'
  21.     PRINT 'DBCC SHRINKFILE (N''' + @logname + ''' , 0, TRUNCATEONLY);'
  22.     PRINT 'go'
  23.     FETCH NEXT FROM db_cursor INTO @logname, @dbname
  24. END  
  25.  
  26. CLOSE db_cursor  
  27. DEALLOCATE db_cursor
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement