首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么添加Server用户来“执行卷维护任务”会大大提高数据库大小调整的速度?

问为什么添加Server用户来“执行卷维护任务”会大大提高数据库大小调整的速度?
EN

Database Administration用户
提问于 2015-02-27 16:05:09
回答 2查看 21.5K关注 0票数 20

如果我想创建5GB数据库

代码语言:javascript
复制
CREATE DATABASE [test]
 CONTAINMENT = NONE
 ON  PRIMARY 
( NAME = N'test', FILENAME = N'E:\2012\test.mdf' , SIZE = 5529600KB , FILEGROWTH = 1024KB )
 LOG ON 
( NAME = N'test_log', FILENAME = N'E:\2012\test_log.ldf' , SIZE = 1024KB , FILEGROWTH = 10%)

我的SSD需要1分钟。

但是当我将Server用户添加到Perform volume maintenance tasks时

只需要1-2秒。

,为什么会这样?有人能给我解释一下为什么吗?

EN

回答 2

Database Administration用户

回答已采纳

发布于 2015-02-27 16:12:27

那是因为即时文件初始化。简而言之,Server可以利用数据库数据文件(而不是事务日志文件)的这一特权。这意味着Server在初始化时不必将数据文件(S)清零。

在没有授予Service帐户的“执行卷维护任务”特权的情况下,在创建数据库时,Server需要将"test.mdf“和"test_log.ldf”归零。

使用“执行卷维护任务”特权权限集,Server只需将"test_log.ldf“清零。在您的测试中,CREATE DATABASE的开销大大减少,因此缩短了持续时间。

参考文献

如何以及为什么启用即时文件初始化

即时初始化-什么,为什么,以及如何?

票数 27
EN

Database Administration用户

发布于 2017-11-06 15:40:31

这不会影响.ldf文件(日志文件),至少不影响MS文章。

为什么要这么做?速度

为什么不做呢?可能的安全风险。有人可以黑进你的盒子,并可能读取非零的内存空间,并检索数据。风险很小,但还是有风险的。这就是为什么默认情况下不启用它的原因。

详细说明:如何以及为什么启用即时文件初始化

票数 3
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/94025

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档