
教你如何清除SQL
日志 \x0d\x0a\x0d\x0a1.打开查询分析器,输入
命令\x0d\x0aDUMP TRANSACTION
数据库名 WITH NO_LOG\x0d\x0a2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。\x0d\x0a\x0d\x0a清除Log有两种方法:\x0d\x0a\x0d\x0a 1.自动清除法\x0d\x0a\x0d\x0a 开放数据库选项 Trunc Log on Chkpt,使数据库系统每隔一段时间自动清除Log。此方法的优点是无须人工干预,由SQL Server自动执行,并且一般不会出现Log溢满的情况;缺点是只清除Log而不做备份。\x0d\x0a\x0d\x0a 2.手动清除法\x0d\x0a\x0d\x0a 执行命令“dump transaction”来清除Log。以下两条命令都可以清除日志:\x0d\x0a\x0d\x0adump transaction with truncate_only\x0d\x0adump transaction with no_log \x0d\x0a\x0d\x0a 通常删除事务日志中不活跃的部分可使用“dump transaction with trancate_only”命令,这条命令写进事务日志时,还要做必要的并发性检查。SYBASE提供“dump transaction with no_log”来处理某些非常紧迫的情况,使用这条命令有很大的危险性,SQL Server会d出一条警告信息。为了尽量确保数据库的一致性,你应将它作为“最后一招”。\x0d\x0a\x0d\x0a 以上两种方法只是清除日志,而不做日志备份,若想备份日志,应执行“dump transaction database_name to dumpdevice”命令。 \x0d\x0a\x0d\x0a清除后对数据库没有影响具体 *** 作方法是: 1.到 开始\程序\Microsoft SQL Server\企业管理器,然后在d出的窗口中把加号一直打开,最后看到数据库tds_dserp,用鼠标点上这个tds_dserp数据库,然后再点鼠标右键,选 “所有任务”,在新d出的窗口中选择“分离数据库”(前提是其它机器都不能使用小R3),然后点“确定”按钮; 2.到d:\data\下找到tds_dserp_log.ldf这个文件,然后把它删除掉(先不要彻底删除,放到回收站里就行); 3.再到刚才打开的企业管理器中找到“数据库”这个文件夹,把鼠标点在这个文件夹下,然后再点右键,选择“所有任务”。在新d出窗口中选择“附加数据库”, 在新d出的窗口中选择“要附加数据库的MDF文件:”后的带三个点的按钮,然后选择d:\data\tds_dserp.mdf,确定,回到第一个窗口后在“指定数据库所有者”后选择“sa”,然后再确定。 4.经过以上三步数据库的大的日志已经被删除掉了,你再运行一下小R3,只要能登录进去就说明 *** 作没有问题了,这时就可以将回收站里的文件清除掉了。
评论列表(0条)