Instant Initialization是NTFS文件系统的特性,可以让文件快速的初始化,显著提高SQLSERVER的数据文件扩张和RESTORE的速度。
SQL Server内部无法控制Instant Initialization特性,如果想使用,需要授权SQL Server启动账户Perform Volume Maintenance Tasks 的权限(本地管理员默认拥有此权限)。如果SQL Server服务处于运行状态,则需要重启后才能生效。
我们可以通过trace flag 3004, 3605查看SQLSERVER是否使用了这个特性。
代码如下:
dbcc traceon(3004,3605,-1)
接下来创建一个数据库
Create Database db4
创建完毕之后,相应的信息会输出到错误日志中。
执行xp_readerrorlog进行检查
如果开启了,会发现数据文件的部分Zeroing消失了...注:log是无法利用instant initializaiton功能的
References:
http://www.sqlskills.com/blogs/kimberly/post/Instant-Initialization-What-Why-and-How.aspx