SQLServer技术(30)

来源:互联网 发布:日本爱知教育大学 编辑:程序博客网 时间:2024/05/05 09:27
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>

1、文件与文件组
在中数据库是由数据库文件和事务日志文件组成的。一个数据库至少应包含一个数据库文件和一个事物日志文件。
(1)数据库文件(DatabaseFile)
数据库文件是存放数据库数据和数据库对象的文件。一个数据库可以有一个或多个数据库文件,一个数据库文件只属于一个数据库。当有多个数据库文件时,有一个文件被定义为主数据库文件(PrimaryDatabaseFile),扩展名为mdf,它用来存储数据库的启动信息和部分或全部数据,一个数据库只能有一个主数据库文件。其它数据库文件被称为次数据库文件(SecondaryDatabaseFile),扩展名为ndf,用来存储主文件没存储的其它数据。

采用多个数据库文件来存储数据的优点体现在:
 ·数据库文件可以不断扩充,而不受文件大小的限制;
 ·可以将数据库文件存储在不同的硬盘中,这样可以同时对几个硬盘做数据存取,提高了数据处理的效率。对于服务器型的计算机尤为有用。

(2)事务日志文件(TransactionLogFile)
事务日志文件是用来记录数据库更新情况的文件,扩展名为ldf。例如使用INSERT、UPDATE、DELETE、等对数据库进行更的操作都会记录在此文件中,而如SELECT等对数据库内容不会有影响的操作则不会记录在案。一个数据库可以有一个或多个事务日志文件。

SQLServer中采用“Write-Ahead(提前写)”方式的事务,即对数据库的修改先写入事务日志中,再写入数据库。其具体操作是,系统先将更改操作写入事务日志中,再更改存储在计算机缓存中的数据,为了提高执行效率,此更改不会立即写到硬盘中的数据库,而是由系统以固定4的时间间隔执行CHECKPOINT命令,将更改过的数据批量写入硬盘。SQLServer有个特点,它在执行数据更改时会设置一个开始点和一个结束点,如果尚未到达结束点就因某种原因使操作中断,则在SQLServer重新启动时会自动恢复已修改的数据,使其返回未被修改的状态。由此可见,当数据库破坏时,可以用事务日志恢复数据库内容。

(3)文件组(FileGroup)
文件组是将多个数据库文件集合起来形成的一个整体。每个文件组有一个组名。与数据库文件一样,文件组也分为主文件组(PrimaryFileGroup)和次文件组(SecondaryFileGroup)一个文件只能存在于一个文件组中,一个文件组也只能被一个数据库使用。主文件组中包含了所有的系统表。当建立数据库时,主文件组包括主数据库文件和未指定组的其它文件。在次文件组中可以指定一个缺省文件组,那么在创建数据库对象时如果没有指定将其放在哪一个文件组中,就会将它放在缺省文件组中。如果没有指定缺省文件组则主文件组,为缺省文件组。
注意:事务日志文件不属于任何文件组。

6.1.2用EnterpriseManager创建数据库
在EnterpriseManager中可以按下列步骤来创建数据库:
(1)单击工具栏中的图标,或在服务器的Databases文件夹或其下属数据库图标上单击右键,选择NewDatabase…选项,即会出现如图6-1所示的对话框。
(2)指定数据库的名称和编码方式,如图6-1所示。

图6-1创建数据库对话框

(3)点击TransactionLog页框,指定数据库文件的名称、存储位置、初始容量大小和所属文件组,如图6-2所示。
(4)进行数据库文件大小扩充方式和容量限制设置,如图6-2所示。
(5)点击TransactionLog页框,指定事务日志文件的名称、存储位置和初始容量大小,如图6-3所示。
(6)进行事务日志文件大小扩充方式和容量限制设置,如图6-3所示。

(7)单击“确定”按钮,则建新数据库。
注意:数据库的名称最长为128个字符,且不区分大小写。
注意:在此指定的文件容量以MB为单们的,数据库文件的最小容量为1MB,最大容量为1,048,516TB(这么大的硬盘还没出世!);事务日志文件的最小容量为1MB。
一个服务器在理论上可以管理32,767数据库。

共2页  1 
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
原创粉丝点击