SQL Server 2005删除日志文件的几种方法小结
使用MS数据库的朋友就会知道一个问题,C盘的空间很容易被占满了。因为本来系统盘就分区比较小,这是由于数据库在使用过程中会使日志文件不断增加,使得数据库的性能下降,并且占用大量的磁盘空间。SQLServer数据库都有log文件,log文件记录用户对数据库修改的操作。可以通过直接删除log文件和清空日志在清除数据库日志。 一、删除LOG1、分离数据库。分离数据库之前一定要做好数据库的全备份,选择数据库——右键——任务——分离。 勾选删除连接 分离后在数据库列表将看不到已分离的数据库。 2、删除LOG文件 3、附加数据库,附加的时候会提醒找不到log文件。 删除数据库信息信息的ldf文件: 附加数据库之后将生成新的日志文件log,新的日志文件的大小事504K。 也可以通过命令才完成以上的操作: use master; execsp_detach_db@dbname='TestDB'; execsp_attach_single_file_db@dbname='TestDB',@physname='D:Program FilesMicrosoft SQL ServerMSSQL10.SQL2008MSSQLDATATestDB.mdf' 二 、清空日志该命令在SQL Server 2005和2000支持,SQL Server 2008不支持该命令。 DUMP TRANSACTIONTestDBWITHNO_LOG 三、收缩数据库文件DBCCSHRINKFILE('TestDB_log',1) 四、截断事务日志BACKUPLOGTestDBWITHNO_LOG 该命令在SQL Server 2008也是不支持,在SQL Server 2005和2000可以使用。 清除SQLServer2005的LOG文件 --最好备份日志,以后可通过日志恢复数据。。。以下为日志处理方法一般不建议做第4,6两步第4步不安全,有可能损坏数据库或丢失数据第6步如果日志达到上限,则以后的数据库处理会失败,在清理日志后才能恢复.--*/--下面的所有库名都指你要处理的数据库的库名 SQL Server 数据库使用时间一长就会导致Log文件逐渐变的庞大,想备份一下数据库,想发给谁都很困难 DUMP TRANSACTION 数据库名 WITH NO_LOG 不重启SQL服务,删除SQLServer系统日志 SQLServer的系统日志过大,就会引起SQLServer服务器无法启动等一系列问题。今天我遇到了这个问题,在网上搜索了一下,解决方法是删除就 可以了,可是当前的ErrorLog正在被SQL使用无法删除啊,要删除只能停止SQL服务器,难道就没有别得办法了吗? EXEC sp_cycle_errorlog注释 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |