《数据库原理与应用》04.数据库的创建和管理.ppt

上传人:wuy****n92 文档编号:72520212 上传时间:2023-02-12 格式:PPT 页数:34 大小:309.61KB
返回 下载 相关 举报
《数据库原理与应用》04.数据库的创建和管理.ppt_第1页
第1页 / 共34页
《数据库原理与应用》04.数据库的创建和管理.ppt_第2页
第2页 / 共34页
点击查看更多>>
资源描述

《《数据库原理与应用》04.数据库的创建和管理.ppt》由会员分享,可在线阅读,更多相关《《数据库原理与应用》04.数据库的创建和管理.ppt(34页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、孙孙孙孙 发发发发 勤勤勤勤 扬州大学新闻与传媒学院扬州大学新闻与传媒学院扬州大学新闻与传媒学院扬州大学新闻与传媒学院YY数据库原理与应用数据库原理与应用第四讲第四讲 SQL Server 2005数据库的创建数据库的创建和管理和管理主要内容n SQL Server 特点特点n SQL Server的安装和配置的安装和配置n SQL Server 工具和实用程序工具和实用程序 4.1 数据库的存储结构 数据库的存储结构分为逻辑存储结构和物理存储结构两种。数据库的存储结构分为逻辑存储结构和物理存储结构两种。数据库的逻辑存储结构指的是数据库是由哪些性质的信息所数据库的逻辑存储结构指的是数据库是由哪

2、些性质的信息所组成组成。实际上,实际上,SQL Server的数据库是由诸如表、视图、索的数据库是由诸如表、视图、索引等各种不同的数据库对象所组成。引等各种不同的数据库对象所组成。数据库的物理存储结构是讨论数据库文件是如何在磁盘上存数据库的物理存储结构是讨论数据库文件是如何在磁盘上存储的,数据库在磁盘上是以文件为单位存储的,由数据库文储的,数据库在磁盘上是以文件为单位存储的,由数据库文件和事务日志文件组成,一个数据库至少应该包含一个数据件和事务日志文件组成,一个数据库至少应该包含一个数据库文件和一个事务日志文件。库文件和一个事务日志文件。4.1 数据库的存储结构4.1.1 数据库文件数据库文件

3、 1主数据库文件(主数据库文件(Primary Database File)一个数据库可以有一个或多个数据库文件,一个数据库文件只一个数据库可以有一个或多个数据库文件,一个数据库文件只能属于一个数据库。当有多个数据库文件时,有一个文件被定能属于一个数据库。当有多个数据库文件时,有一个文件被定义为主数据库文件(简称为主文件),其扩展名为义为主数据库文件(简称为主文件),其扩展名为mdf。4.1 数据库的存储结构主数据库文件用来存储数据库的启动信息以及部主数据库文件用来存储数据库的启动信息以及部分或者全部数据,是所有数据库文件的起点,包分或者全部数据,是所有数据库文件的起点,包含指向其它数据库文件

4、的指针。一个数据库只能含指向其它数据库文件的指针。一个数据库只能有一个主数据库文件。有一个主数据库文件。4.1 数据库的存储结构2辅助数据库文件(辅助数据库文件(Secondary Database File)用于存储主数据库文件中未存储的剩余数据和数用于存储主数据库文件中未存储的剩余数据和数据库对象,一个数据库可以没有辅助数据库文件,据库对象,一个数据库可以没有辅助数据库文件,但也可以同时拥有多个辅助数据库文件。但也可以同时拥有多个辅助数据库文件。辅助数据库文件的扩展名为辅助数据库文件的扩展名为ndf(简称为辅助文(简称为辅助文件)。件)。4.1 数据库的存储结构3事务日志文件事务日志文件

5、存储数据库的更新情况等事务日志信息存储数据库的更新情况等事务日志信息,当数据当数据库损坏时,管理员使用事务日志恢复数据库。库损坏时,管理员使用事务日志恢复数据库。每一个数据库至少必须拥有一个事务日志文件,每一个数据库至少必须拥有一个事务日志文件,而且允许拥有多个日志文件。事务日志文件的扩而且允许拥有多个日志文件。事务日志文件的扩展名为展名为ldf,日志文件的大小至少是,日志文件的大小至少是512KB。SQL Server事务日志采用提前写入的方式事务日志采用提前写入的方式。4.1 数据库的存储结构注意:注意:SQL Server 2000中的数据和事务日志文中的数据和事务日志文件不能存放在压缩

6、文件系统或象共享网络目录等件不能存放在压缩文件系统或象共享网络目录等远程的网络驱动器上。远程的网络驱动器上。SQL Server 2000的文件拥有两个名称,即逻辑的文件拥有两个名称,即逻辑文件名和物理文件名。当使用文件名和物理文件名。当使用Transact-SQL命命令语句访问某一个文件时,必须使用该文件的逻令语句访问某一个文件时,必须使用该文件的逻辑名辑名。物理文件名是文件实际存储在磁盘上的文件名,物理文件名是文件实际存储在磁盘上的文件名,而且可包含完整的磁盘目录路径。而且可包含完整的磁盘目录路径。4.1 数据库的存储结构4.1.2 数据库文件组数据库文件组 利用文件组可以使服务器的性能得

7、到提高。利用文件组可以使服务器的性能得到提高。主主文文件件组组中中包包含含了了所所有有的的系系统统表表,当当建建立立数数据据库库时时,主文件组包括主数据库文件和未指定组的其他文件。主文件组包括主数据库文件和未指定组的其他文件。用用户户定定义义文文件件组组中中可可以以指指定定一一个个缺缺省省文文件件组组,那那么么在在创创建建数数据据库库对对象象时时如如果果没没有有指指定定将将其其放放在在哪哪一一个个文文件件组组中中,就就会会将将它它放放在在缺缺省省文文件件组组中中。如如果果没没有有指定缺省文件组,则主文件组为缺省文件组。指定缺省文件组,则主文件组为缺省文件组。4.1 数据库的存储结构一一个个文文

8、件件只只能能存存在在于于一一个个文文件件组组中中,一一个个文文件件组组也也只只能能被被一一个个数数据据库库使使用用;日日志志文文件件是是独独立立的的,它不能作为任何文件组的成员。它不能作为任何文件组的成员。本章首页4.2 创建和删除数据库 4.2.1 创建数据库创建数据库 创建数据库需要一定许可,在默认情况下,只有创建数据库需要一定许可,在默认情况下,只有系统管理员和数据库拥有者可以创建数据库。数系统管理员和数据库拥有者可以创建数据库。数据库被创建后,创建数据库的用户自动成为该数据库被创建后,创建数据库的用户自动成为该数据库的所有者。据库的所有者。创建数据库的过程实际上就是为数据库设计名称、创

9、建数据库的过程实际上就是为数据库设计名称、设计所占用的存储空间和存放文件位置的过程等。设计所占用的存储空间和存放文件位置的过程等。4.2 创建和删除数据库1使用向导创建数据库使用向导创建数据库 2使用企业管理器创建数据库使用企业管理器创建数据库 3使用使用Transact-SQL语言创建数据库语言创建数据库4.2 创建和删除数据库说明:在说明:在Transact-SQL语言的命令格式中,用语言的命令格式中,用 括起来的内容表示是可选的;括起来的内容表示是可选的;,n表示重复表示重复前面的内容;用前面的内容;用括起来表示在实际编写语句括起来表示在实际编写语句时,用相应的内容替代;用时,用相应的内

10、容替代;用 括起来表示是必选括起来表示是必选的;类似的;类似A|B的格式,表示的格式,表示A和和B只能选择一个,只能选择一个,不能同时都选。不能同时都选。4.2 创建和删除数据库CREATE DATABASE database_nameON PRIMARY ,n ,n LOG ON ,n FOR LOAD|FOR ATTACH 4.2 创建和删除数据库:=(NAME=logical_file_name,FILENAME=os_file_name,SIZE=size,MAXSIZE=max_size|UNLIMITED,FILEGROWTH=growth_increment),n:=FILEGR

11、OUP filegroup_name ,n 4.2 创建和删除数据库database_name:新新数数据据库库的的名名称称。数数据据库库名名称称在在服服务务器器中中必必须须唯唯一一,最最长长为为128个个字字符符,并并且且要要符符合合标标识识符符的的命命名规则。每个服务器管理的数据库最多为名规则。每个服务器管理的数据库最多为32767个。个。ON:指指定定存存放放数数据据库库的的数数据据文文件件信信息息。列列表表用用于于定定义义主主文文件件组组的的数数据据文文件件,列列表表用用于于定定义义用户文件组及其中的文件。用户文件组及其中的文件。PRIMARY:用用于于指指定定主主文文件件组组中中的的

12、文文件件。主主文文件件组组的的第第一一个个由由指指定定的的文文件件是是主主文文件件。如如果果不不指指定定PRIMARY关关键键字字,则则在在命命令令中中列列出出的的第第一一个个文文件件将将被被默默认认为主文件。为主文件。4.2 创建和删除数据库LOG ON:指指明明事事务务日日志志文文件件的的明明确确定定义义。如如果果没没有有本本选选项项,则则系系统统会会自自动动产产生生一一个个文文件件名名前前缀缀与与数数据据库库名名相相同同,容容量量为为所所有有数数据据库库文文件件大大小小1/4的的事务日志文件。事务日志文件。FOR LOAD:表表示示计计划划将将备备份份直直接接装装入入新新建建的的数数据据

13、库库,主主要要是是为为了了和和过过去去的的SQL Server版本兼容。版本兼容。FOR ATTACH:表表示示在在一一组组已已经经存存在在的的操操作作系系统统文文件件中中建建立立一一个个新新的的数数据库。据库。NAME:指定数据库的逻辑名称。指定数据库的逻辑名称。FILENAME:指指定定数数据据库库所所在在文文件件的的操操作作系系统统文文件件名名称称和和路路径径,该该操操作作系系统文件名和统文件名和NAME的逻辑名称一一对应。的逻辑名称一一对应。4.2 创建和删除数据库SIZE:指指定定数数据据库库的的初初始始容容量量大大小小。如如果果没没有有指指定定主主文文件件的的大大小小,则则SQL

14、Server默默认认其其与与模模板板数数据据库库中中的的主主文文件件大大小小一一致致,其其它它数数据据库库文文件件和和事事务务日日志志文文件件则则默默认认为为1MB。指指定定大大小小的的数数字字size可可以以使使用用KB、MB、GB和和TB后后缀缀,默默认认的的后后缀缀为为MB。Size中中不不能能使使用用小小数数,其其最最小小值值为为512KB,默默认认值值为为1MB。主主文文件件的的size不不能能小小于于模模板板数数据据库中的主文件。库中的主文件。MAXSIZE:指指定定操操作作系系统统文文件件可可以以增增长长到到的的最最大大尺尺寸寸。如果没有指定,则文件可以不断增长直到充满磁盘。如果

15、没有指定,则文件可以不断增长直到充满磁盘。4.2 创建和删除数据库FILEGROWTH:指定文件每次增加容量的大小,指定文件每次增加容量的大小,当指定数据为当指定数据为0时,表示文件不增长。增加量可时,表示文件不增长。增加量可以确定为以以确定为以KB、MB作后缀的字节数或以作后缀的字节数或以%作后作后缀的被增加容量文件的百分比来表示。默认后缀缀的被增加容量文件的百分比来表示。默认后缀为为MB。如果没有指定如果没有指定FILEGROWTH,则默认值则默认值为为10%,每次扩容的最小值为,每次扩容的最小值为64KB。4.2 创建和删除数据库例例4-2-1:使用:使用CREATE DATABASE创

16、建一个创建一个student数据库,所有参数均取默认值。数据库,所有参数均取默认值。例例4-2-2:创建一个:创建一个Student1数据库,该数据库数据库,该数据库的主文件逻辑名称为的主文件逻辑名称为Student1_data,物理文件,物理文件名为名为Student1.mdf,初始大小为,初始大小为10MB,最大尺,最大尺寸为无限大,增长速度为寸为无限大,增长速度为10%;数据库的日志文;数据库的日志文件逻辑名称为件逻辑名称为Student1_log,物理文件名为,物理文件名为Student1.ldf,初始大小为,初始大小为1MB,最大尺寸为,最大尺寸为5MB,增长速度为,增长速度为1MB

17、。4.2 创建和删除数据库例例4-2-3:创建一个指定多个数据文件和日志文件的数据库。:创建一个指定多个数据文件和日志文件的数据库。该数据库名称为该数据库名称为students,有,有1个个10MB和和1个个20MB的数据的数据文件和文件和2个个10MB的事务日志文件。数据文件逻辑名称为的事务日志文件。数据文件逻辑名称为student1和和student2,物理文件名为,物理文件名为student1.mdf和和student2.mdf。主文件是。主文件是student1,由,由primary指定,两指定,两个数据文件的最大尺寸分别为无限大和个数据文件的最大尺寸分别为无限大和100MB,增长速度

18、,增长速度分别为分别为10%和和1MB。事务日志文件的逻辑名为。事务日志文件的逻辑名为studentlog1和和studentlog2,物理文件名为,物理文件名为studentlog1.ldf和和studentlog2.ldf,最大尺寸均为,最大尺寸均为50MB,文件增长速度为,文件增长速度为1MB。4.2 创建和删除数据库4.2.2 删除数据库删除数据库 1利用企业管理器删除数据库利用企业管理器删除数据库 2利用利用Drop语句删除数据库语句删除数据库 Drop database database_name,n 说明:只有处于正常状态下的数据库,才能使用说明:只有处于正常状态下的数据库,才能

19、使用DROP语句删除。当数据库处于以下状态时不能语句删除。当数据库处于以下状态时不能被删除:数据库正在使用;数据库正在恢复;数被删除:数据库正在使用;数据库正在恢复;数据库包含用于复制的已经出版的对象。据库包含用于复制的已经出版的对象。本章首页4.3 修改数据库 4.3.1 数据库更名数据库更名 在在重重命命名名数数据据库库之之前前,应应该该确确保保没没有有用用户户使使用用该该数数据据库库,而而且且数数据据库库应应该该设设置置为为“单单用用户户”模模式式。系统存储过程系统存储过程sp_renamedb语法如下:语法如下:sp_renamedb dbname=old_name,newname=n

20、ew_name 4.3 修改数据库4.3.2 利用企业管理器修改数据库属性利用企业管理器修改数据库属性 限限 制制 访访 问问 包包 含含 两两 个个 选选 项项:“db_owner,dbcreator或或sysadmin的的成成员员”选选项项表表示示只只有有数数据据库库的的所所有有者者、数数据据库库创创建建者者和和系系统统管管理理员员才才有有权权使使用用数数据据库库;“单单用用户户”选选项项表示数据库在同一时间只能供一个用户使用。表示数据库在同一时间只能供一个用户使用。ANSI NULL默默认认设设置置:允允许许在在数数据据库库表表的的列列中中输输入入空空(NULL)值。)值。递归触发器:指

21、定是否允许触发器递归调用。递归触发器:指定是否允许触发器递归调用。自自动动更更新新统统计计信信息息:允允许许使使用用SELECT INTO或或BCP、WRITETEXT、UPDATETEXT命命令令向向表表中中大大量量插插入入数数据据。在开发数据库时常常将此选项设置为真。在开发数据库时常常将此选项设置为真。4.3 修改数据库残残缺缺页页检检测测:允允许许自自动动检检测测有有损损坏坏的的页页。页页是是数数据据库库内内容容的的基基本本存存储储单单位位,每每个个页页的的大大小小为为8KB。由由于于SQL Server对对页页的的读读写写单单位位是是大大小小为为512字字节节的的扇扇区区,当当每每个个

22、页页的的第第一一个个扇扇区区被被成成功功写写入入后后,SQL Server就就认认为为此此页页已已经经被被成成功功写写入入。因因此此,如如果果写写完完第第一一个个扇扇区区后后发发生生突突发发事事件件,导导致致写写入入中中断断,就就会会产产生生有有损损坏坏的的页页,需需要要通通知知备备份份来来恢恢复复数数据库。据库。自自动动关关闭闭:当当数数据据库库中中无无用用户户时时,自自动动关关闭闭该该数数据据库库,并并将将所所占占用用的的资资源源交交还还给给操操作作系系统统。对对那那些些不不间间断断使使用用的的数数据库不要使用此选项。据库不要使用此选项。4.3 修改数据库自自动动收收缩缩:允允许许定定期期

23、对对数数据据库库进进行行检检查查,当当数数据据库库文文件件或或日日志志文文件件中中未未用用空空间间超超过过其其大大小小的的25%时时,系系统统将将会会自自动动缩缩减减文文件件,使使其其未未用用空空间间等等于于25%。当当文文件件大大小小没没有有超超过过其其建建立立时时的的初初始始大大小小时时,不不会会缩缩减减文文件件。缩缩减减后后的的文文件件也也必须大于或等于其初始大小。必须大于或等于其初始大小。自自动动创创建建统统计计信信息息:在在优优化化查查询询时时,根根据据需需要要自自动动创创建建统统计信息。计信息。使用被引用的标识符:标识符必须用双引号括起来,且可使用被引用的标识符:标识符必须用双引号

24、括起来,且可以不遵循以不遵循Transact-SQL命名标准。命名标准。4.3 修改数据库4.3.3 使用使用Transact-SQL语言修改数据库语言修改数据库 只只有有数数据据库库管管理理员员或或具具有有CREATE DATABASE权限的数据库所有者才有权执行该语句。权限的数据库所有者才有权执行该语句。ALTER DATABASEALTER DATABASE语句的语法格式如下:语句的语法格式如下:4.3 修改数据库Alter database databasenameadd file,n to filegroup filegroupname|add log file,n|remove f

25、ile logical_file_name|remove filegroup filegroup_name|modify file|modify name=new_databasename|add filegroup filegroup_name|modify filegroup filegroup_namefilegroup_property|name=new_filegroup_name 4.3 修改数据库add file,n to filegroup filegroupname:表表示示向向指指定定的的文文件件组组中中添添加加新新的的数数据文件。据文件。add log file,n:增增

26、加加新新的的日日志志文文件。件。remove file logical_file_name:删删除除指指定定的的操操作作系统文件。系统文件。remove filegroup filegroup_name:删删除除指指定定的的文件组。文件组。modify file:修改某个操作系统文件。:修改某个操作系统文件。4.3 修改数据库modify name=new_databasename:重重命命名名数数据库。据库。add filegroup filegroup_name:增增加加一一个个文文件件组。组。modify filegroup filegroup_name:修改某个:修改某个指定文件组的属

27、性。指定文件组的属性。4.3 修改数据库4.3.4 缩小数据库缩小数据库 1使用企业管理器可以缩小数据库。使用企业管理器可以缩小数据库。2使用使用Transact-SQL语言缩小数据库。语言缩小数据库。(1)使用)使用DBCC SHRINKDATABASE命令收缩命令收缩指定数据库中的数据文件。指定数据库中的数据文件。DBCC SHRINKDATABASE(database_name,target_percent,NOTRUNCATE|TRUNCATEONLY)4.3 修改数据库database_name:要收缩的数据库名称。要收缩的数据库名称。Target_percent:当当数数据据库库收

28、收缩缩后后,数数据据库库文文件件中中剩剩余余可可用空间的百分比。用空间的百分比。NOTRUNCATE:被被释释放放的的文文件件空空间间依依然然保保持持在在数数据据库库文文件中。如果未指定,将所释放的文件空间被操作系统回收。件中。如果未指定,将所释放的文件空间被操作系统回收。TRUNCATEONLY:将数据文件中未使用的空间释放给操将数据文件中未使用的空间释放给操作系统,并将文件收缩到上一次所分配的大小。使用作系统,并将文件收缩到上一次所分配的大小。使用 TRUNCATEONLY 时,将忽略时,将忽略 target_percent的限制。的限制。4.3 修改数据库(2)使使用用DBCC SHRI

29、NKFILE命命令令收收缩缩数数据据库库的指定数据文件或日志文件大小的指定数据文件或日志文件大小DBCC SHRINKFILE的语法格式如下:的语法格式如下:DBCC SHRINKFILE(file_name,target_size|,EMPTYFILE|NOTRUNCATE|TRUNCATEONLY)4.3 修改数据库file_name:要收缩文件的逻辑名称。:要收缩文件的逻辑名称。target_size:将将文文件件缩缩小小到到指指定定的的长长度度,以以MB为单位。如果不指定,将文件减少到最大程度。为单位。如果不指定,将文件减少到最大程度。EMPTYFILE:将将数数据据从从指指定定文文件件中中转转移移到到同同一一文件组中的其它文件。文件组中的其它文件。NOTRUNCATE和和TRUNCATEONLY:与:与DBCC SHRINKDATABASE命令中相同。命令中相同。本章首页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com