【数据库】SQL server 启用IFI 功能
2023-09-27 14:27:53 时间
今天早上Data warehouse 部门的人告诉我平常的Data loading时间还算正常,但是昨天晚上的loading 时间比一般平常的时间长很多,是不是数据库有什么问题?
我仔细检查了一下数据库,发现昨天的数据档案MDF file 已经满了,数据库自动加了10GB 来增大这一个数据档案。我又跟着进一步检查IFI 的设定,发现这个设定没有被启用。几乎可以肯定这个就是问题的所在.
什么是IFI 呢?IFI 就是Instant file initialization. 当数据库要取得硬盘空间来扩增数据档案的时候,系统会把取得的硬盘空间一个一个的用数字0 把它填满,称为“zero out the disk”.如果是小小的1MB,可能不痛不痒。但如果是10 GB 或是更大的硬盘空间,那就要花一段时间来等待系统用数字0 填满硬盘. 如果资料库启用IFI 的话,SQL server 就会省略这个zero out 的过程。相对的,数据库就不用静置在那里等待这个过程的完成.所以一般来讲,在设定数据库的时候,尤其是数据仓储,都会启用IFI 的功能。
但是启用这个功能都没有什么缺点吗?答案是有的,会有数据安全考量的问题。因为省略了zero out disk 的动作,所以新取得的硬盘空间不会被完全删除干净。有心人士是可以透过特别的方法来读取那些原本该被删除的资料。所以有security 的考量。但很多事情都有优缺点,还是需要衡量利与弊的比重,来做最佳的设定选择。
相关文章
- 第一章、关于SQL Server数据库的备份和还原(sp_addumpdevice、backup、Restore)
- TransactionScope事务处理方法介绍及.NET Core中的注意事项 SQL Server数据库漏洞评估了解一下 预热ASP.NET MVC 的VIEW [AUTOMAPPER]反射自动注册AUTOMAPPER PROFILE
- 性能测试:自建数据库与RDS性能对比SQL Server案例排查分析
- SQL server 统计数据库
- rds删除SQL server数据库
- ASP.NET MVC与Sql Server交互,把字典数据插入数据库
- 【Docker】安装Presto连接Hive、mysql、oracle、postgresql、SQL server等7种类型数据库
- 数据库 SQL Server 到 MySQL 迁移方法总结
- 《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——第1章 开始使用SQL Server和PowerShell 1.1 简介
- 《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——1.8 创建SQL Server实例对象
- 《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——2.4 启动/停止SQL Server服务
- 《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——2.5 列出SQL Server配置设置
- 《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——2.8 创建数据库
- 《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——2.14 创建存储过程
- 《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》—— 使用Invoke-Sqlcmd实施批量导出
- SQL Server数据库基础知识汇总
- SQL Server-语句类别、数据库范式、系统数据库组成
- 一段后台C#查询SQL Server数据库代码
- 基于MS SQL Server的数据库学习安排
- Sql Server数据库监听 c#代码
- SQL Server 2017 数据库安装教程
- MS SQL Server分析数据库的I/O性能
- 【转】sql server内存分析,sql server磁盘分析,sql serverop分析
- 【sql server复制】数据库复制:修改表结构、新增表、新增存储过程 会被复制到订阅服务器?
- (2.13)备份与还原--sql server数据库主要状态和切换路径
- 这几天朋友提了一个问题: 在sql server中创建一个表,表中字段testb是uniqueidentifier类型的,使用NEWID()生成, 这个数据是全球唯一的么? 假设数据库中记录一直
- 这几天朋友提了一个问题: 在sql server中创建一个表,表中字段testb是uniqueidentifier类型的,使用NEWID()生成, 这个数据是全球唯一的么? 假设数据库中记录一直
- SQL Server 数据库调整表中列的顺序操作
- Navicat连接数据库出现 is not allowed to connect to this MySQL server 报错