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)