private775 icon

[SQL] MS SQL - shrink all log files

private775 | PRO | 10/02/18 10:09:39 AM UTC | 0 ⭐ | 872 👁️ | Never ⏰ | []
T-SQL |

660 B

|

None

|

0 👍

/

0 👎

USE [master]
DECLARE @dbname NVARCHAR(MAX) -- database name  
DECLARE @logname NVARCHAR(MAX) -- log name  
 
 
declare db_cursor CURSOR FOR  
select f.name as logname, d.name as dbname
from sys.master_files f
inner join sys.databases d on f.database_id = d.database_id
where f.type_desc = 'LOG'
and f.file_guid is not null
 
OPEN db_cursor   
FETCH NEXT FROM db_cursor INTO @logname, @dbname
 
 
WHILE @@FETCH_STATUS = 0   
BEGIN   
    PRINT 'use [' + @dbname + '];'
    PRINT 'go'
    PRINT 'DBCC SHRINKFILE (N''' + @logname + ''' , 0, TRUNCATEONLY);'
    PRINT 'go'
    FETCH NEXT FROM db_cursor INTO @logname, @dbname
END   
 
CLOSE db_cursor   
DEALLOCATE db_cursor

Comments