sql server之数据库结构

数据库是一个容器,里面有表,视图,索引等数据库对象。

文章目录

  • 系统数据库
    • master
    • tempdb
    • model
    • msdb
  • 数据库文件
    • 主要数据文件
    • 次要数据文件
    • 事务日志文件
  • 文件组

系统数据库

SQL SERVER系统包括下面4个系统数据库

master

master数据库记录所有系统级别的信息,例如登陆账户,系统配置信息,所有其他的数据库信息,数据库文件的位置等。master数据库还可以记录SQL server的初始化信息

tempdb

tempdb数据库保存所有的临时表和临时存储过程。他还满足其他的临时存储要求,例如存储系统生成的工作表。tempdb数据库是全局资源,所有连接到系统的用户的临时表奥和存储过程都存储在该数据库中。tempdb数据库在每次启动时都重新创建,因此该数据库在系统启动后总是干净的。临时表和存储过程在连接端口时自动除去,而且当系统关闭之后任何连接都不会处于活动状态,因此tempdb数据库中任何内容都不会从sql server的一个会话保存到另一个会话。

默认情况下,SQL server运行时tempdb数据库会根据需要自动增长。不过,与其他数据库不同,每次启动数据库引擎时,它会重置为其初始大小。如果为tempdb数据库定义的空间较小,则每次重新启动数据库引擎时,tempdb数据库会自动增加到支持工作负荷所需的大小,这一工作可能会增加系统处理开销。为避免这种情况,可以使用alter database增加tempdb数据库的大小

model

model是系统创建的所有数据库的模板。当发出create database语句时,新数据库的第一部分通过复制model数据库中的内容创建,剩余部分由空页填充。由于sql server每次启动时都要创建tempdb数据库,model数据库必须一直存在于sql server系统中,以便为tempdb数据库提供模板支持

msdb

msdb数据库供sql server代理程序调度警报和作业时使用。

数据库文件

在物理结构上,SQL Server数据库以文件的形式保存在磁盘上,文件主要有3种:

主要数据文件

每个数据库都包含一个主文件,内含数据库的启动信息,也可以用于存储数据。主要数据库的扩展名默认为".mdf"

次要数据文件

次要数据文件含有不能放入主要数据文件中的数据。如果主文件足够大,能够容纳数据库中的所有数据,则可以不需要次要数据文件。有些数据库可能非常大,因此需要多个次要数据库文件。或者在各自的磁盘驱动器珊瑚使用次要文件,以便在多个磁盘上存储数据
次要数据文件的扩展名默认为.ndf

事务日志文件

事务日志文件包含日志信息,可以用来恢复数据库。每个数据库至少有一个事务日志文件,日志文件最小为512KB
事务日志文件的扩展名为.ldf

默认情况下,SQL Server数据库文件保存在C:\Program Files (x86)\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA目录下

每个数据库文件都有两个名称,即逻辑名称和物理名称,逻辑名称在SQL语句中引用物理文件时使用,比如新建一个名为MySQLDB的数据库,它的主要数据文件的逻辑名称未MySQLDB_Data,它的事务日志文件的逻辑名称未MySQLDB_log;而物理名称则是包含路径的文件名:MySQLDB_Data.mdf

文件组

sql server允许对数据库文件进行分组管理。SQL server文件组可以分为两种类型,即主要文件组和用户定义文件组。
默认的主要文件组的名称为PRIMARY,在创建数据库时,由数据库引擎自动创建。主要数据文件和没有明确指定文件组的数据文件都被指派到PRIMARY文件组中。
用户定义文件组由用户创建。SQL Server在不创建用户定义文件组的情况下也能正常工作。数据库应用程序的规模不大时,不需要创建用户定义文件组。

原文:

你可能感兴趣的:(#,sql,server)