SQL_Server_2000_4

上传人:sx****84 文档编号:243016736 上传时间:2024-09-13 格式:PPT 页数:49 大小:206.50KB
返回 下载 相关 举报
SQL_Server_2000_4_第1页
第1页 / 共49页
SQL_Server_2000_4_第2页
第2页 / 共49页
SQL_Server_2000_4_第3页
第3页 / 共49页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第四章 数据库管理,1,主要内容:,SQL 数据库用户的主要工作之一就是进行数据库的开发。因为数据库的功能主要就要通过数据库及数据库中的各个对象实现的。,本节详细介绍如何创建和管理数据库,包括:创建数据库、修改数据库、删除数据库等。,2,(一)数据库,SQL Server中数据库是由一组存储了数据的表和其他一些对象组成的,包括视图、索引、存储过程、触发器等。数据库中的数据通常是与一个特定的主题或过程相关联的,比如一个仓库的存储信息,一个单位的人员组成信息等。,3,SQL Server 2000,使用一组操作系统文件映射数据库。数据库中的所有数据和对象(如表、存储过程、触发器和视图)都存储在下列操作系统文件中:,(,1,)主数据文件,(,2,)次数据文件,(,3,)事务日志文件,数据库必须至少包含一个数据文件和事务日志文件。,4,(,1,)主数据文件,(.mdf),用于存储数据库的系统表以及所有对象的启动信息,是所有数据库文件的起点。,所有数据库有且仅有一个主数据文件。,5,(,2,)次数据文件,(.ndf),这些文件含有不能置于主要数据文件中的所有数据。如果主文件可以包含数据库中的所有数据,那么数据库就不需要次要数据文件。有些数据库可能足够大故需要多个次要数据文件,或使用位于不同磁盘驱动器上的辅助文件将数据扩展到多个磁盘。,6,(,3,)事务日志文件,(.ldf),存储数据库的事务日志,用来进行数据恢复和记录数据库的操作情况。,每个数据库至少有一个日志文件。,注:,SQL Server 2000,不强制使用,.mdf,、,.ndf,和,.ldf,文件扩展名,但建议使用这些扩展名以帮助标识文件的用途。,7,文件组,文件组允许对文件进行分组,以便于管理和数据的分配放置。,文件组分为:主文件组和辅文件组。,主文件组:包含主数据库文件(包括系统表)和未指定组的其它文件。,辅文件组:其它文件。,8,Data1.ndf(d:),Data2.ndf(e:),Data3.ndf(f:),fgroup1,table1,9,默认文件组,初始情况下,主文件是默认文件组,可以选择一辅文件组作为默认文件组。系统对象和表仍然保留在 PRIMARY 文件组内,而不是新默认文件组。,10,采用主辅数据文件及文件组存储数据的好处:,文件大小可以不受操作系统空间限制,可以将不同的文件保存在不同的硬盘中,可以同时对多硬盘进行访问,提高数据处理效率。,11,文件和文件组的设计规则,文件或文件组不能由一个以上的数据库使用。例如,文件,sales.mdf,和,sales.ndf,包含,sales,数据库中的数据和对象,任何其它数据库都不能使用这两个文件。,文件只能是一个文件组的成员。,数据和事务日志信息不能属于同一文件。,事务日志文件不能属于任何文件组。,12,使用文件和文件组的建议,大多数数据库在只有单个数据文件和单个事务日志文件的情况下可以很好地运行。,如果使用多个文件,请为附加文件创建第二个文件组,并将其设置为默认文件组。这样,主文件将仅包含系统表和对象。,若要获得最佳性能,请在尽可能多的可用本地物理磁盘上创建文件或文件组,并将争夺空间最激烈的对象置于不同的文件组中。,13,使用文件组以允许将对象放置在特定的物理磁盘上。,将最常访问的表和属于这些表的非聚集索引置于不同的文件组上。如果文件位于不同的物理磁盘上,由于采用并行输入/输出,所以性能得以提高。,不要将事务日志文件与其它文件和文件组置于同一物理磁盘上。,14,数据库的空间分配,数据存储的基本单位是,页,。页的大小是,8K,。,日志文件不包含页,而是包含一系列日志记录。,每页的开始部分是,96,字节的页首,用于存储系统信息,如页的类型、页的可用空间量、拥有页的对象的对象,ID,等。,15,数据库的空间分配,数据页包含数据行中除,text,、,ntext,和,image,数据外的所有数据,,text,、,ntext,和,image,数据存储在单独的页中。,在数据页上,数据行紧接着页首按顺序放置。,数据行不能跨页,一行内最多包含的数据量是,8060,字节,不包括,text,、,ntext,和,image,数据。,16,17,页面的不同分类:,数据页面:,存储,text,ntext,和,image,以外数据,文本,图像页面:,存储,text,ntext,和,image,数据,索引页面:,存储索引项,全局分配映射页面:,存储区域分配信息,自由空间页面:,存储空白页面的信息,索引分配映射页面:,存数表或索引所使用的区域信息,18,区域,区域是,SQL Server,每次申请空间时分配的最小单元,可将其中的空间分配给表和索引。,一个区域是,8,个邻接的页(或,64 KB,)。,为了节省空间,库中对象可以混合使用一个完整的区域。,19,SQL Server 2000,有两种类型的区域:,统一型:由单个对象所有,其中的所有八页只能由拥有该区域的对象使用。,混合型:最多可由,8,个对象共享。,20,4.1,数据库操作,创建数据库,修改数据库,查看数据库,压缩数据库,删除数据库,创建数据库维护计划,21,4.1.1,创建数据库,通过企业管理器创建,使用向导创建,通过查询分析器创建(,*,),22,通过企业管理器创建数据库,设置数据库名称,设置数据文件名称、保存位置、初始大小、所属文件组、文件属性等,设置数据文件名称、保存位置、初始大小、文件属性等,注:数据库和事务日志文件的初始大小与为,model,数据库指定的默认大小相同。,主文件中包含,model,数据库的系统表。,23,通过向导创建数据库,展开服务器组,再展开要创建数据库的服务器。,在,工具,菜单上单击,向导,命令。,展开,数据库,文件夹。,双击,创建数据库向导,。,完成向导中的步骤。,24,通过查询分析器创建数据库,CREATE DATABASE,database_name, ON ,.,n, , ,.,n, LOG ON ,.,n, COLLATE,collation_name, FOR LOAD | FOR ATTACH , :=, PRIMARY ,(, NAME,=,logical_,=,os_,SIZE,=,size,MAXSIZE,=,max_size,| UNLIMITED ,=,growth_increment,),.,n, :=, ,.,n,25,通过查询分析器创建数据库,CREATE DATABASE,database_name, ON ,.,n, , ,.,n, LOG ON ,.,n, COLLATE,collation_name, FOR LOAD | FOR ATTACH , :=, PRIMARY ,(, NAME,=,logical_,=,os_,SIZE,=,size,MAXSIZE,=,max_size,| UNLIMITED ,=,growth_increment,),.,n, :=, ,.,n,创建的数据库名称,数据库名称必须唯一,并且符合标识符的规则,长度不能超过,128,个字符,实际能指定的字符数为,123,个。,26,标识符命名规则:,1.,第一个字符必须是下列字符之一:,Unicode,标准,2.0,所定义的字母。,Unicode,中定义的字母包括拉丁字母,a-z,和,A-Z,,以及来自其它语言的字母字符,下划线,(_),、,at,符号,(),或者数字符号,(#),。,注:在,SQL Server,中,某些处于标识符开始位置的符号具有特殊意义。以,at,符号开始的标识符表示局部变量或参数。以一个数字符号,(#),开始的标识符表示临时表或过程。以双数字符号,(#),开始的标识符表示全局临时对象。,27,2,后续字符可以是:,Unicode,标准,2.0,所定义的字母。,来自基本拉丁字母或其它国家,/,地区脚本的十进制数字。,、美元符号,($),、数字符号或下划线。,3,标识符不能是,Transact-SQL,的保留字。,SQL Server,保留其保留字的大写和小写形式。,4,不允许嵌入空格或其它特殊字符。,28,通过查询分析器创建数据库,CREATE DATABASE,database_name,ON, ,.,n, , ,.,n, LOG ON ,.,n, COLLATE,collation_name, FOR LOAD | FOR ATTACH , :=, PRIMARY ,(, NAME,=,logical_,=,os_,SIZE,=,size,MAXSIZE,=,max_size,| UNLIMITED ,=,growth_increment,),.,n, :=, ,.,n,指定存放数据库的数据文件组信息,包括主文件组及用户定义的文件组。,29,通过查询分析器创建数据库,CREATE DATABASE,database_name, ON ,.,n, , ,.,n, LOG ON ,.,n, COLLATE,collation_name, FOR LOAD | FOR ATTACH , :=, PRIMARY ,(, NAME,=,logical_,=,os_,SIZE,=,size,MAXSIZE,=,max_size,| UNLIMITED ,=,growth_increment,),.,n, :=, ,.,n,主文件组及用户定义的文件组,,n,表示可以为数据库指定多个文件。,30,通过查询分析器创建数据库,CREATE DATABASE,database_name, ON ,.,n, , ,.,n, LOG ON ,.,n, COLLATE,collation_name, FOR LOAD | FOR ATTACH , :=, PRIMARY ,(, NAME,=,logical_,=,os_,SIZE,=,size,MAXSIZE,=,max_size,| UNLIMITED ,=,growth_increment,),.,n, :=, ,.,n,定义用来存储数据库日志的日志文件。,31,通过查询分析器创建数据库,CREATE DATABASE,database_name, ON ,.,n, , ,.,n, LOG ON ,.,n, COLLATE,collation_name, FOR LOAD | FOR ATTACH , :=, PRIMARY ,(, NAME,=,logical_,=,os_,SIZE,=,size,MAXSIZE,=,max_size,| UNLIMITED ,=,growth_increment,),.,n, :=, ,.,n,与早期版本兼容。,32,通过查询分析器创建数据库,CREATE DATABASE,database_name, ON ,.,n, , ,.,n, LOG ON ,.,n, COLLATE,collation_name, FOR LOAD | FOR ATTACH , :=, PRIMARY ,(, NAME,=,logical_,=,os_,SIZE,=,size,MAXSIZE,=,max_size,| UNLIMITED ,=,growth_increment,),.,n, :=, ,.,n,指定从现有的一组操作系统文件中附加数据库。,33,通过查询分析器创建数据库,CREATE DATABASE,database_name, ON ,.,n, , ,.,n, LOG ON ,.,n, COLLATE,collation_name, FOR LOAD | FOR ATTACH , :=, PRIMARY ,(, NAME,=,logical_,=,os_,SIZE,=,size,MAXSIZE,=,max_size,| UNLIMITED ,=,growth_increment,),.,n, :=, ,.,n,指明主文件组的文件。主文件组包含所有数据库系统表。还包含所有未指派给用户文件组的对象。如果没有指定,PRIMARY,,那么,CREATE DATABASE,语句中列出的第一个文件将成为主文件。,34,通过查询分析器创建数据库,CREATE DATABASE,database_name, ON ,.,n, , ,.,n, LOG ON ,.,n, COLLATE,collation_name, FOR LOAD | FOR ATTACH , :=, PRIMARY ,(, NAME,=,logical_,=,os_,SIZE,=,size,MAXSIZE,=,max_size,| UNLIMITED ,=,growth_increment,),.,n, :=, ,.,n,为由,定义的文件指定逻辑名称。,为,定义的文件指定操作系统文件名。,35,例1,例2,例3,例4,例5,例6,36,4.1.2,修改数据库,扩充数据文件和事务日志空间,添加或删除数据文件和事务日志文件,创建文件组,更改默认文件组,更改数据库设置,添加新的数据库或删除不用的数据库,更改数据库名,更改数据库所有者,37,使用企业管理器更改数据库,使用查询分析器更改数据库(*),38,示例,1,:更改数据库名,Sp_renamedb oldname,newname,39,例2,例3,例4,例5,例6,例7,例8,40,4.1.3,查看数据库,通过企业管理器查看数据库信息,通过企业管理器查看数据库属性,通过,T-SQL,语言查看数据库,41,通过企业管理器,1,查看任务板,2,查看数据库属性,42,通过查询分析器查看数据库信息,Sp_helpdb database name,注:加数据库名是查看指定数据库属性,不加数据库名查看所有数据库属性。,43,查看数据库空间,Sp_spaceused,查看数据库日志空间,Dbcc sqlperf(logspace),查看数据库的文件信息,Sp_helpfile,查看数据库的文件组信息,Sp_help,44,4.1.3,收缩数据库,SQL Server,允许收缩数据库的每个文件以除掉未使用的页面。数据文件和事务日志文件都可以被收缩。,不能收缩比其最初规模小的完全的数据库。假定一个数据库创建时的初始规模是,5M,,然后增长到了,20M,,此后所有数据库中的数据都被删掉了,它能收缩的最小规模也是,5M,。,45,使用“调度”命令创建或更改自动收缩数据库的频率和时间。,可以对数据文件进行收缩,也可以对事务日志文件进行收缩。,可以手工设置数据库的收缩,也可以设置数据库自动收缩。,46,使用查询分析器收缩数据库,Dbcc shrinkdatabase(dbname,target_percent,notruncate/truncateonly),Dbcc shrink,target size,emptyfile,/notruncate/truncateonly),47,4.1.4,删除数据库,当不再需要数据库时,或如果数据库已被移到另一数据库或服务器时,即可删除该数据库。一旦删除数据库,文件及其数据都从服务器上的磁盘删除,是永久删除,并且不能检索,除非恢复以前的备份。,不能删除系统数据库:,msdb,master,model,tempdb.,数据库删除之后备份,master,数据库,因为删除数据库之后将更新,master,中的系统表。,48,Drop database dbname,49,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!