SQLserver2008删除数据库日志

现象: 当数据库事务日志满了,需要操作删除对应数据库的日志

处理方法: 使用SQLserver数据库工具登录对应的数据库,操作以下语句

注意1: mssql4291828_db设置为对应数据库名称

USE [mssql4291828_db]  
GO  
ALTER DATABASE [mssql4291828_db] SET RECOVERY SIMPLE WITH NO_WAIT  
GO  
ALTER DATABASE [mssql4291828_db] SET RECOVERY SIMPLE  
GO  

USE [mssql4291828_db]
GO
--此处需要注意,并非所有数据库的日志文件名都是“数据库名_log” 
DBCC SHRINKFILE (N'mssql4291828_db_Log' , 0,TRUNCATEONLY)  
GO  
USE [mssql4291828_db]  
GO  
ALTER DATABASE [mssql4291828_db] SET RECOVERY FULL WITH NO_WAIT  
GO  
ALTER DATABASE [mssql4291828_db] SET RECOVERY FULL  
GO  

注意2:如果不知道数据库日志文件名,可以执行以下语句,查询指定数据库(如: mssql4291828_db)的日志文件名称

USE [mssql4291828_db]   
GO  
SELECT name FROM SYS.database_files WHERE type_desc='LOG'

处理完成后可以再次检查下日志

查看数据库日志大小

  sqlServer 如何查看数据库日志文件的大小

  查询分析器执行命令: dbcc sqlperf(logspace)

 

  

 

posted @ 2021-09-23 10:19  小珈  阅读(573)  评论(0编辑  收藏  举报