首页 > 解决方案 > 更改最小事务日志文件大小

问题描述

我有一个设置为默认事务日志大小很差的数据库(不幸的是我)现在我想永久更改这些默认值。我正在使用以下脚本,它似乎可以工作但不是永久有效。

use master

ALTER DATABASE [MyDB]
MODIFY FILE (NAME=MyDB_log,SIZE=10000MB,MAXSIZE=UNLIMITED,FILEGROWTH=1000MB);

当我在笔记本电脑上处理一些大型事务时,我想在完成后将日志文件缩小到 10GB 大小,这样我就不会用完磁盘空间,但是当我缩小日志文件时,它会缩小回到 8MB。我正确设置的另一个数据库缩小到我创建它时设置的 10GB 大小。

如何强制默认为 10GB?

许多其他帖子是人们试图将他们的日志文件缩小到小尺寸,这不是那样,我想故意将我的本地数据库日志文件保持在这个大文件大小,并且不希望它比那个小。

此外,即使上面的脚本在我查看日志文件属性时将 MAXSIZE 设置为 UNLIMITED,但它的上限仍然为 2GB(我没有设置,在任何情况下我对 UNLIMITED 的设置都不起作用)

标签: sql-server-2016

解决方案


为什么不具体缩小它的大小?

USE {Your Database};
GO

DBCC SHRINKFILE (N'{Your Log File Name}' , 10000);

显然替换大括号 ( {}) 中的值。


推荐阅读