带你轻松了解 SQL Server数据库的组成

作者:limeinan 来源:赛迪网 时间:2009-02-05 15:53:00 

在Microsoft SQL Server 2000中,用于数据存储的实用工具是数据库。数据库的物理表现是操作系统文件,即在物理上,一个数据库由一个或多个磁盘上的文件组成。这种物理表现只对数据库管理员是可见的,而对用户是透明的。逻辑上,一个数据库由若干个用户可视的组件构成,如表、视图、角色等,这些组件称为数据库对象。用户利用这些逻辑数据库的数据库对象存储或读取数据库中的数据,也直接或间接地利用这些对象在不同应用程序中完成存储、操作和检索等工作。逻辑数据库的数据库对象可以从企业管理器中查看.

每个SQL Server 2000数据库(无论是系统数据库还是用户数据库)在物理上都由至少一个数据文件和至少一个日志文件组成。出于分配和管理目的,可以将数据库文件分成不同的文件组。

数据文件:分为主要数据文件和次要数据文件两种形式。每个数据库都有且只有一个主要数据文件。主要数据文件的默认文件扩展名是.mdf。它将数据存储在表和索引中,包含数据库的启动信息,还包含一些系统表,这些表记载数据库对象及其他文件的位置信息。次要数据文件包含除主要数据文件外的所有数据文件。有些数据库可能没有次要数据文件,而有些数据库则有多个次要数据文件。次要数据文件的默认文件扩展名是.ndf。

日志文件:SQL Server具有事务功能,以保证数据库操作的一致性和完整性。所谓事务就是一个单元的工作,该单元的工作要么全部完成,要么全部不完成。日志文件用来记录数据库中已发生的所有修改和执行每次修改的事务。SQL Server是遵守先写日志再执行数据库修改的数据库系统,因此如果出现数据库系统崩溃,数据库管理员(DBA)可以通过日志文件完成数据库的修复与重建。每个数据库必须至少有一个日志文件,但可以 不止一个。日志文件的默认文件扩展名是.1df。建立数据库时,SQI。Server会自动建立数据库的日志文件。

文件组:一些系统可以通过控制在特定磁盘驱动器上放置的数据和索引来提高自身的性能。文件组可以对此进程提供帮助。系统管理员可以为每个磁盘驱动器创建文件组,然后将特定的表、索引、或表中的text、ntext或image数据指派给特定的文件组。

SQI.Server有两种类型的文件组:主文件组和用户定义文件组。主文件组包含主要数据文件和任何没有明确指派给其他文件组的文件,系统表的所有页均分配在主文件组中;用户定义文件组是在CR E_ATE DATA_BASE或AI,TER DATA.BASE语句中,使用FII,EGROUP关键字指定的文件组。SQt.Server 2000在没有文件组时也能有效地工作,因此许多系统不需要指定用户定义文件组。在这种情况下,所有文件都包含在主文件组中,而且SQI。Server 2000可以在数据库内的任何位置分配数据。

每个数据库中都有一个文件组作为默认文件组运行。当SQI。Server给创建时没有为其指定文件组的表或索引分配页时,将从默认文件组中进行分配。一次只能有一个文件组作为默认文件组。如果没有指定默认的文件组,主文件组则成为默认的文件组。

标签:轻松了解,SQL,Server数据库,组成
0
投稿

猜你喜欢

  • 解决vue3打包过后空白页面的情况

    2024-05-09 10:43:00
  • python 获取毫秒数,计算调用时长的方法

    2021-10-13 02:30:12
  • Python写了个疫情信息快速查看工具实例代码

    2021-10-31 15:26:52
  • Python实现大乐透号码随机生成

    2022-09-04 18:46:01
  • 教你如何升级SQL Server数据库系统

    2009-01-19 14:42:00
  • Oracle 管道 解决Exp/Imp大量数据处理问题

    2024-01-21 22:15:16
  • Python实现读取SQLServer数据并插入到MongoDB数据库的方法示例

    2022-11-16 04:14:21
  • SQLSERVER2008中CTE的Split与CLR的性能比较

    2024-01-28 06:56:04
  • 20行python代码的入门级小游戏的详解

    2023-07-15 01:25:31
  • python使用两种发邮件的方式smtp和outlook示例

    2021-02-12 13:31:54
  • 浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑

    2024-04-10 13:46:11
  • 代码总结Python2 和 Python3 字符串的区别

    2023-05-25 00:58:52
  • 详解python如何通过numpy数组处理图像

    2023-04-07 03:53:20
  • 定时备份 Mysql并上传到七牛的方法

    2024-01-25 14:11:13
  • 如何使用Script Encoder?

    2010-06-05 12:42:00
  • 访问和更改关系数据,使用MSSQL外联接

    2024-01-18 06:39:33
  • BootStrap 轮播插件(carousel)支持左右手势滑动的方法(三种)

    2024-04-18 09:39:33
  • MySQL触发器学习总结

    2024-01-14 10:31:38
  • Python Numpy 数组的初始化和基本操作

    2022-08-28 22:18:23
  • django drf框架中的user验证以及JWT拓展的介绍

    2023-12-31 21:14:11
  • asp之家 网络编程 m.aspxhome.com