加入收藏 | 设为首页 | 会员中心 | 我要投稿 晋中站长网 (https://www.0354zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQL Server数据库日志文件过大如何进行收缩?

发布时间:2023-01-05 06:01:04 所属栏目:MsSql教程 来源:未知
导读: 本文已参与「新人创作礼」活动,一起开启掘金创作之路。
由于服务器磁盘空间有限,SQL Server数据库服务器端产生的事务日志可能出现爆满的情况,导致客户端产生的数据无法写入服务器数据库

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

由于服务器磁盘空间有限,SQL Server数据库服务器端产生的事务日志可能出现爆满的情况,导致客户端产生的数据无法写入服务器数据库,进而可能引发宕机事件mssql数据库日志,针对此情况应及时扩充磁盘空间或做好数据的备份迁移工作。

第一步:选中需要收缩的数据库,然后右键数据库属性,找到选项,将恢复模式改成简单;

第二步:右键数据库,“任务”->“收缩”->“文件” ;

第三步:收缩数据库日志,选择文件类型“日志”,选择收缩操作“将文件收缩到” 最小(后有提示),点击“确定”;

第四步:收缩完成后,重复第一步及第二步**更改数据库恢复模式,将模式从“简单”改为“完整”。******

注意:如若磁盘空间已满,无法将数据库事务日志文件进行收缩操作,可采取先分离出部分暂未使用的数据库,然后将分离出的MDF文件及LDF文件拷贝到其他磁盘空间充足的盘符,进行释放当前磁盘空间,待日志收缩成功释放空间后,再次将分离出的数据库文件进行附加操作即可。

mssql数据库表下载_mssql数据库日志_离线日志数据下载

---------------------------------------华丽的分隔符--------------------------------------------------------------------------------华丽的分隔符--------------------------------------------------------------------------------华丽的分隔符-----------------------------------------

除了上面的可视化操作外,直接通过TSQL脚本执行更为方便,代码如下:

USE[master]  
GO  
ALTER DATABASE '数据库名称(XXX)' SET RECOVERY SIMPLE WITH NO_WAIT  
GO  
ALTER DATABASE '数据库名称(XXX)' SET RECOVERY SIMPLE   --简单模式  
GO  
USE Win10DG  

GO  
DBCC SHRINKFILE (N'XXX_log' , 2, TRUNCATEONLY)  --设置压缩后的日志大小为2M,可以自行指定  
GO  
USE[master]  
GO  
ALTER DATABASE '数据库名称(XXX)' SET RECOVERY FULL WITH NO_WAIT  
GO  
ALTER DATABASE '数据库名称(XXX)' SET RECOVERY FULL  --还原为完全模式  
GO  
复制代码

(编辑:晋中站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章