發表文章

目前顯示的是 4月, 2017的文章

SQL Server 備份 清除 LOG

DECLARE @HandleDBName NVARCHAR(MAX), @BackupFilePath NVARCHAR(MAX) SET @HandleDBName = N'DREP_ENT' SET @BackupFilePath = 'D:\AVMS_DB_Source\LogBack\' + @HandleDBName + '_' + REPLACE(REPLACE(REPLACE(CONVERT(VARCHAR,GETDATE(), 20), '-', ''), ' ' ,''), ':', '') + '.LOG' USE master GO -- 備份目前的 log BACKUP LOG DREP_ENT TO DISK=''' + @BackupFilePath + ''' --將資料庫復原模式切換到簡單模式 ALTER DATABASE DREP_ENT SET RECOVERY SIMPLE WITH NO_WAIT -- 找到 DatabaseNameLog 的值 USE DREP_ENT GO DECLARE @DBLogName VARCHAR(MAX) SELECT @DBLogName = name FROM [sys].[database_files] WHERE type_desc = 'log' --縮減 log file 到 1MB DBCC SHRINKFILE(@DBLogName, 1) --將資料庫復原模式切換到完整模式 USE [master] GO ALTER DATABASE DREP_ENT SET RECOVERY FULL WITH NO_WAIT Ref:http://charlesbc.blogspot.tw/2011/01/sql-server-log.html