温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

sql server 2008以上数据库 收缩事务日志

发布时间:2020-07-22 19:24:54 来源:网络 阅读:889 作者:傲世狂刀 栏目:关系型数据库

日志简介


SQL Server中的事务日志无疑是SQL Server中最重要的部分之一。因为SQL SERVER利用事务日志来确保持久性(Durability)和事务回滚(Rollback)。从而还部分确保了事务的
ACID属性.在SQL Server崩溃时,DBA还可以通过事务日志将数据恢复到指定的时间点。当SQL Server运转良好时,多了解一些事务日志的原理和概念显得并不是那么重要。但是,一旦SQL SERVER发生崩溃时,了解事务日志的原理和概念对于快速做出正确的决策来恢复数据显得尤为重要.本系列文章将会从事务日志的概念,原理,SQL Server如何使用日志来确保持久性属性等方面来谈SQL Server的事务日志.


随着数据库的不断增长,数据库日志(ldf文件)不断增长,甚至磁盘空间都已经存满,所以必要时需要对日志文件进行收缩。


事务日志截断

若要避免数据库的事务日志被填满,例行备份至关重要。在简单恢复模式下,备份了数据库后会自动截断日志,而在完整恢复模式下,只有备份了事务日志后方才截断日志。但是,截断过程有时也可能发生延迟。有关识别和应对各种延迟因素的信息,请参阅可能延迟日志截断的因素。

--BACKUP log testDB with no_log

USE testDB; 
GO

-- 截断日志,改变数据库备份模式为简单.

ALTER DATABASE testDB SET RECOVERY SIMPLE;

GO

-- 收缩日志,调整大小为1M,testDB_Log为日志逻辑名称.

DBCC SHRINKFILE (testDB_Log, 1); 
GO

-- 回复备份模式为完整.

ALTER DATABASE testDB SET RECOVERY FULL; 
GO



向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI