SQL项目3-2数据库的创建与管理.ppt
《SQL项目3-2数据库的创建与管理.ppt》由会员分享,可在线阅读,更多相关《SQL项目3-2数据库的创建与管理.ppt(39页珍藏版)》请在三一办公上搜索。
1、项目3-2 数据库的创建和管理,3-2.1 数据库简介3-2.2 估算数据库的空间需求3-2.3 数据库的创建3-2.4 数据库的管理 3-2.5 设置数据库选项,2,目标:1.掌握创建数据库的两种方法,理解数据库的逻辑文件名和物理文件名的含义;2.掌握数据库管理的常用操作:查看数据库属性、修改数据库大小、收缩数据库、数据库的更名和删除;3.掌握设置数据库选项的常用操作。,项目3-2 数据库的创建和管理,3,3-2.1 数据库简介,数据库创建的过程就是数据库逻辑设计的物理实现过程。如果能根据ER模型并结合单位的实际情况创建出一个性能优异、结构合理并具有良好扩充性能的数据库,将会为后在数据库基础
2、上开发应用程序奠定坚实的基础,这是数据库管理最重要、最核心的问题。数据库的创建主要包括数据库及其表、索引、视图、存储过程等对象的创建。创建数据库时,系统会建立数据库的存储结构。数据库的存储结构分为逻辑存储结构和物理存储结构两种。数据库的逻辑存储结构指的是数据库是由哪些性质的信息所组成。实际上,SQL Server的数据库是由诸如表、视图、索引等各种不同的数据库对象所组成。,4,数据库的物理存储结构是讨论数据库文件是如何在磁盘上存储的,数据库在磁盘上是以文件为单位存储的,由数据库文件和事务日志文件组成,一个数据库至少应该包含一个数据文件和一个事务日志文件。1主数据文件(Primary Datab
3、ase File)一个数据库可以有一个或多个数据文件,一个数据文件只能属于一个数据库。当有多个数据文件时,有一个文件被定义为主数据文件(简称为主文件),其扩展名为mdf。主数据文件用来存储数据库的启动信息以及部分或者全部数据,是所有数据库文件的起点,包含指向其它数据库文件的指针。一个数据库只能有一个主数据文件。2次数据文件(Secondary Database File)用于存储主数据文件中未存储的剩余数据和数据库对象,一个数据库可以没有次数据文件,但也可以同时拥有多个次数据文件。次数据文件的扩展名为ndf(简称为次文件)。,5,3-2.1.1 数据库的存储结构1.盘区和页面 在创建数据库对象
4、时,SQL Server会使用盘区和页面这种特殊的数据结构给数据库对象分配空间。在SQL Server中,数据存储的基本单位是页。页的大小是8KB,这样数据库上每MB是128页。每页的开始部分是96B的页首,用于存放系统信息,如页的类型、页的可用空间、占据该页的数据库对象的对象标识等。页有数据页、索引页、文本/图象页等8种。盘区(区域)是连续8个页,可防止数据产生碎片,使SQL Server易于寻找。每个盘区只能包含一个数据库对象。盘区是表和索引分配空间的基本单位。盘区是表和索引分配空间的基本单位。一个数据库是由文件组成的,文件是由盘区组成的,盘区是由页面组成的。,6,2.数据库的存储组织,图
5、5-1 数据库的存储组织,7,注意:所有的数据库都有唯一的主数据文件和一个或多个事务日志文件,可能还有次数据文件;数据行存放在数据页中,但数据页只能存放除text、ntext和image类型数据外的所有数据,text、ntext和image类型数据存储在单独的页中,行不能跨页存储,页中每一行最多包含的数据量是8060B;数据存放在连续的页中;日志文件不包含页,而是包含一系列日志记录;所有新建的数据库都是model数据库的副本。,8,3.文件组文件组是文件的集合。对文件进行分组,便于进行数据的管理和分配磁盘空间。例如有三个数据文件data1.ndf,data2.ndf,data3.ndf,分别位
6、于不同的磁盘上,将这三个文件指派到文件组filegroup1中。假设在文件组filegroup1上创建一个表,对表中数据的查询将会分散到三个磁盘上,从而提高系统的查询性能。文件和文件组的设计规则:文件和文件组不能由一个以上的数据库使用;文件只能是一个文件组的成员;事务日志文件不属于任何一个文件组。数据和事务日志不能属于同一文件或文件组。数据文件和日志文件总是分开存放的。,9,主文件组中包含了所有的系统表,当建立数据库时,主文件组包括主数据库文件和未指定组的其他文件。用户定义文件组中可以指定一个缺省文件组,那么在创建数据库对象时如果没有指定将其放在哪一个文件组中,就会将它放在缺省文件组中。如果没
7、有指定缺省文件组,则主文件组为缺省文件组。3-2.1.2 事务日志文件 SQL创建数据库的时候,会同时创建事务日志文件。事务日志文件存储数据库的更新情况等事务日志信息,当数据库损坏时,管理员使用事务日志恢复数据库。每一个数据库至少必须拥有一个事务日志文件,而且允许拥有多个日志文件。事务日志文件的扩展名为ldf。,10,1.事务日志文件和数据文件必须分开存放,优点如下:事务日志文件可以单独备份;有可能从服务器失效的事件中将服务器恢复到最近的状态;事务日志不会抢占数据库的空间;可以很容易地监测到事务日志的空间;在向数据文件和事务日志文件写入数据时会产生较少的冲突,这有利于提高SQL Server的
8、性能。2.事务日志的工作过程在SQL Server中,事务是一次完成的操作的集合。虽然一个事务中可能包含了很多SQL语句,但在处理上就象他们是同一个操作似的。为了维护数据的完整性,事务必须彻底完成或者根本不执行。如果一个事务只是部分地被执行,并作用于数据库,那么数据库将可能被损坏或数据的一致性遭到破坏。,11,SQL Server使用数据库的事务日志来防止没有完成的事务破坏数据。事务日志的工作过程:应用程序发出一个修改数据库中的对象的事务;当这个事务开始时,事务日志会记录一个事务开始标志,并将被影响的数据页从磁盘读入缓冲区;事务中每个数据更改语句都被记录在日志文件中,日志文件将记录一个提交事务
9、的标记。每一个事务都会以这种方式记录在事务日志中并被立即写到硬盘上。在缓冲区中修改相应的数据。这些数据一直在缓冲区中,在检查点进程发生时,检查点进程把所有修改过的数据页写到数据库中,并在事务日志中写入一个检查点标志,这个标志用于在数据库恢复过程中确定事务的起点和终点。以及哪些事务已经作用于数据库 了。,12,随着数据库数据的不断变化,事务日志文件不断增大。因此,必须把它们备份出来,为更多的事务提供空间。备份时,事务日志文件会被截断。事务日志文件包含有在系统故障下恢复数据库需要的所有信息。一般来说,事务日志文件的初始大小是以数据文件大小的10%到25%为起点的,根据数据增长的情况和修改的频率进行
10、调整。关于文件名:SQL Server 2005的文件拥有两个名称,即逻辑文件名和物理文件名。当使用Transact-SQL命令语句访问某一个文件时,必须使用该文件的逻辑名。物理文件名是文件实际存储在磁盘上的文件名,而且可包含完整的磁盘目录路径。,回到首页,13,3-2.2 估算数据库的空间需求,作为数据库管理员,主要任务之一就是创建数据库,并且需要为每个文件指定容量。必须尽可能准确地估算数据库容量,以免浪费磁盘空间资源或者因估计不足造成数据库的空间不够。许多因素会影响数据库最终的大小,在估算数据库容量时要考虑如下因素:每行记录的大小;记录数量;表的数量;索引的数量及索引大小;数据库对象的数量
11、和大小;事务日志的大小;数据库的计划增加量;,回到首页,14,3-2.3 创建数据库,创建数据库的两种方法:1.使用SQL Server Management Studio创建数据库 2.使用Transact-SQL语言创建数据库 创建数据库的过程实际上就是为数据库设计名称、设计所占用的存储空间和存放文件位置以及相关特性的过程。新建数据库的信息放在系统数据库master中,属于系统级信息。建议:创建新数据库时,数据文件逻辑名加入”_data”后缀,形如:jwgl_data;事务日志文件逻辑名加入”_log”后缀,形如:jwgl_log。,15,3-2.3.1 创建数据库的注意事项:创建数据库需
12、要一定许可,在默认情况下,只有系统管理员和被赋予权限的用户可以创建数据库。数据库被创建后,创建数据库的用户自动成为该数据库的所有者。给数据库指定的名字遵循SQL Server 命名规范。所有的新数据库都是系统样本数据库model的副本。单个数据库可以存储在单个文件上,也可以跨越多个文件存储。5.数据库的大小可以被增大或者收缩。6.当新的数据库创建时,SQL Server自动更新master系统数据库中的“sysdatabases”系统表。7.一台服务器上最多可能创建32767个数据库。,16,3-2.3.2 使用T-SQL语言创建数据库说明:在Transact-SQL语言的命令格式中,用 括起
13、来的内容表示是可选的;,n表示重复前面的内容;用括起来表示在实际编写语句时,用相应的内容替代;用 括起来表示是必选的;类似A|B的格式,表示A和B只能选择一个,不能同时都选。1.创建数据库的SQL语句的语法格式:CREATE DATABASE database_name ON PRIMARY,n,n LOG ON,n,17,其中:=NAME=logical_file_name,FILENAME=os_file_name,SIZE=size,MAXSIZE=max_size|UNLIMITED,FILEGROWTH=growth_increment,n=FILEGROUP filegroup_n
14、ame,n 各参数的含义(如下):database_name:新数据库的名称。数据库名称在服务器中必须唯一,最长为128个字符,并且要符合标识符的命名规则。ON:指定存放数据库的数据文件信息。列表用于定义主文件组的数据文件,列表用于定义用户文件组及其中的文件。,18,PRIMARY:用于指定主文件组中的文件。主文件组的第一个由指定的文件是主文件。如果不指定PRIMARY关键字,则在命令中列出的第一个文件将被默认为主文件。LOG ON:指明事务日志文件的明确定义。如果没有本选项,则系统会自动产生一个文件名前缀与数据库名相同,容量为所有数据库文件大小1/4的事务日志文件。NAME:指定数据库文件的
15、逻辑名称。FILENAME:指定数据库文件的物理名称,即数据库所在文件的操作系统文件名称和路径,该操作系统文件名和NAME的逻辑名称一一对应。,19,SIZE:指定数据库的初始容量大小。如果没有指定主文件的大小,则SQL Server默认其与模板数据库中的主文件大小一致,其它数据库文件和事务日志文件则默认为1MB。指定大小的数字size可以使用KB、MB、GB和TB后缀,默认的后缀为MB。Size最小值为1MB,默认值为1MB。MAXSIZE:指定操作系统文件可以增长到的最大尺寸。如果没有指定,则文件可以不断增长直到充满磁盘。UNLIMITED:指定文件可以增长到磁盘变满为止。FILEGROW
16、TH:指定文件每次增加容量的大小,当指定数据为0时,表示文件不增长。文件的增长有两种方式:以指定的MB数量增长和按百分比增长。默认后缀为MB。如果没有指定FILEGROWTH,则默认值为10%。,20,2.几点说明1)创建用户数据库后,要备份master数据库。2)所有数据库都至少包含一个主文件组。所有系统表都分配在主文件组中。数据库还可以包含用户定义的文件组。3)每个数据库都有一个所有者,可在数据库中执行某些特殊的活动。数据库所有者是创建数据库的用户,也可以使用sp_changedbowner更改数据库所有者。4)创建数据库的权限默认地授予sysadmin和dbcreator固定服务器角色的
17、成员。Sysadmin和securityadmin固定服务器角色的成员可以将创建数据库的权限授予其他登录,且必须显示授予,不能通过GRANT ALL语句授予。,21,例5-1:创建一个只含一个数据文件和一个事务日志文件的数据库,数据库名为JWGL1。主数据库文件逻辑名称为jwgl1_data,数据文件的操作系统名称jwgl1.mdf,数据文件大小为5MB,最大值500MB,数据文件大小以10%的增量增加。日志逻辑文件名称jwgl1_log.ldf,事务日志的操作系统名称jwgl1.ldf,日志文件初始大小为5MB,最大值100MB,日志文件以2MB增量增加。,程序清单为:CREATE DATA
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL 项目 数据库 创建 管理

链接地址:https://www.31ppt.com/p-6521121.html