04
2024
02
14:58:59

SQL Server日志清理3种实现方式

这篇文章主要给大家介绍了关于SQL Server日志清理3种实现方式的相关资料,在数据库使用很久后日志文件会累计的越来越大,如果硬盘空间不足可能会导致宕机,需要的朋友可以参考下

因为数据量较大,对数据库表操作比较多,日志的模式,又是完全模式,所以会产生较大的日志文件,那么怎么清理呢

下面给大家介绍3种方式:

1、执⾏SQL命令

先查询日志中文件名和大小

1
2
3
USE 数据库名
GO
SELECT file_id, name,size,* FROM sys.database_files;

可以看到其中name字段为数据库日志名称"数据库日志名称",size是日志大小。接下来就可以执行清理日志操作。值得注意的是,清理日志必须先将数据库转成简单模式,清理后再将数据库置为完全模式,具体的语句如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
USE [master]
GO
ALTER DATABASE [数据库名称] SET RECOVERY SIMPLE WITH NO_WAIT
GO
ALTER DATABASE [数据库名称] SET RECOVERY SIMPLE --简单模式
GO
USE [数据库名称] ----指定需要清除⽇志的数据库名称
GO
DBCC SHRINKFILE (N'数据库⽇志名称' , 11, TRUNCATEONLY) ----指定需要清除⽇志的数据库名⽇志名称
1GO
ALTER DATABASE [数据库名称] SET RECOVERY FULL WITH NO_WAIT
GO
ALTER DATABASE [数据库名称] SET RECOVERY FULL --还原为完全模式

2、数据库终端操作

打开数据库客户端,选择具体数据库

点击数据库,右键选择【属性】

在弹出窗⼝左侧点击【选项】,将【恢复模式】改为【简单】,点击确定保存

点击数据库,右键选择【任务】-【收缩】-【⽂件】

在弹出窗⼝中,【⽂件类型】选择【⽇志】,点击确定即可

点击数据库,右键选择【属性】

在弹出窗⼝左侧点击【选项】,将【恢复模式】恢复为【完成】,点击确定保存

3、删除⽇志⽂件

直接删除⽇志⽂件。此种⽅式可能会遇到“当前⽇志正在被SQL Server使⽤⽆法删除”的问题,此时,需要停⽌SQL Server服务,才能进⾏删除。




推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://hqyman.cn/post/5079.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: