SQLServer数据库文件相关知识笔记_数据库

1、数据库文件概念

数据库文件是SQLServer数据库的物理体现,和计算机的普通文件一样存储在计算机的磁盘空间当中。作为数据库记录和日志等其他信息的存储载体。

2、数据库文件分类

数据库文件主要包括主数据库文件、次要数据库文件、日志文件。

主数据库文件:包含数据库的启动信息,并指向数据库中的其他文件。数据记录和对象可存储在该文件中,也可以存储在次要数据文件中。每个数据库只能有一个主数据文件。主数据文件的建议文件扩展名是.mdf。

次要数据库文件:次要数据文件属于可选文件,由用户定义并存储用户数据。通过将每个文件放在不同的磁盘驱动器上,次要文件可用于将数据分散到多个磁盘上。另如果数据库文件超过了单个Windows 文件的最大值,可以使用次要数据文件,这样数据库文件大小就可以继续增长。

通常情况下次要数据文件的建议文件扩展名是.ndf。

日志文件:事务日志文件用来存储恢复数据库的日志信息。每个数据库必须至少有一个日志文件。日志文件最小为512 KB,事务日志的建议文件扩展名是.ldf。

3、使用多个文件的优点和缺点:

优点

IO性能:数据量小的数据库不需要创建多个文件来分布数据,但随着业务数据的增长,采用多个文件分布数据到不同硬盘可以大大的提高IO性能

备份/恢复性能:多个文件对于数据量大的数据库来说,备份和恢复都很快。

缺点

需要占用更多的磁盘存储空间,因为每个数据库文件都有自己的一套B树和增长空间,还会产生一些磁盘碎片,从而造成磁盘空间的浪费。

4、查询数据库文件SQL语句
SELECT df.[name] 逻辑文件名,df.physical_name 物理文件名,


df.type_desc, df.[size] 文件大小KB, f.[name][filegroup]
,f.is_default


FROM sys.database_files df 


LEFT JOIN sys.filegroups f 
ON df.data_space_id = f.data_space_id

SQLServer数据库文件相关知识笔记_数据库_02

IT技术分享社区

个人博客网站:https://programmerblog.xyz

SQLServer数据库文件相关知识笔记_数据库_03

文章推荐程序员效率:画流程图常用的工具程序员效率:整理常用的在线笔记软件远程办公:常用的远程协助软件,你都知道吗?51单片机程序下载、ISP及串口基础知识硬件:断路器、接触器、继电器基础知识