一 mssql 2005及以前的版本比较简单直接运行:
backup log database_name with no_log dump transaction database_name with no_log dbcc shrinkdatabase (database_name)
二 mssql2008以上命令不适用了可以按以下步骤处理
1.将数据库设置成简单模式
步骤:选择要清理日志的数据库,右键点击–》属性–》选项,选择简单模式
2.进行日志清理收缩
操作步骤:选择要清理日志的数据库,右键点击–》任务–》收缩–》文件
3.选择日志,再选择–在释放未使用的空间前重新组织页,然后填写收缩后的日志大小,点击确定即可。
4.将数据库设置成完整模式
步骤:选择要清理日志的数据库,右键点击–》属性–》选项,选择完整模式
此步骤相对的mssql命名如下:
USE [master] GO ALTER DATABASE [database_name] SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE [database_name] SET RECOVERY SIMPLE –简单模式 GO USE [database_name] GO DBCC SHRINKFILE (N’database_name_log’ , 1, TRUNCATEONLY)–database_name_log注意不一定是数据库日志文件名是结构名 GO USE [master] GO ALTER DATABASE [database_name] SET RECOVERY FULL WITH NO_WAIT GO ALTER DATABASE [database_name] SET RECOVERY FULL –还原为完全模式
三 如果以上都无法处理,此情况比较少见可以通过以下步骤操作
1,首先备份好数据文件和日志文件到其他目录
2,分离数据库
3,分离后删除对应的数据库日志文件然后重新附加,注意此处由于删除了日志文件的,附加是要删除日志文件,附加完成后会生成新的日志文件一般不到1M