SQLSERVER数据库管理.ppt

上传人:新** 文档编号:567620542 上传时间:2024-07-21 格式:PPT 页数:89 大小:7.14MB
返回 下载 相关 举报
SQLSERVER数据库管理.ppt_第1页
第1页 / 共89页
SQLSERVER数据库管理.ppt_第2页
第2页 / 共89页
SQLSERVER数据库管理.ppt_第3页
第3页 / 共89页
SQLSERVER数据库管理.ppt_第4页
第4页 / 共89页
SQLSERVER数据库管理.ppt_第5页
第5页 / 共89页
点击查看更多>>
资源描述

《SQLSERVER数据库管理.ppt》由会员分享,可在线阅读,更多相关《SQLSERVER数据库管理.ppt(89页珍藏版)》请在金锄头文库上搜索。

1、第第第第4 4章章章章 SQLSERVERSQLSERVER数据库管理数据库管理本章的学习目标:了解数据库的存储结构了解数据库的存储结构理解数据库文件和文件组的基本特征理解数据库文件和文件组的基本特征了解了解SQL Server 2008 R2系统的数据库系统的数据库了解数据库的物理存储方式和大小估算方法了解数据库的物理存储方式和大小估算方法熟练掌握用熟练掌握用Management Studio工具和工具和T-SQL语句创建数据库语句创建数据库熟练掌握用熟练掌握用Management Studio工具和工具和T-SQL语句修改数据库语句修改数据库熟练掌握扩大数据库的原因和方法熟练掌握扩大数据库

2、的原因和方法掌握数据库的分离和附加掌握数据库的分离和附加掌握收缩数据库的原因和方法掌握收缩数据库的原因和方法掌握数据库的删除掌握数据库的删除掌握数据库的备份和还原掌握数据库的备份和还原本章内容4.1 SQL SERVER数据库的存储结构数据库的存储结构4.2 数据库的创建数据库的创建4.3 数据库的修改数据库的修改4.4 数据库的分离和附加数据库的分离和附加4.5 数据库的收缩数据库的收缩4.6 数据库删除数据库删除4.7 数据库的备份和还原数据库的备份和还原4.8 本章小结本章小结4.1 SQL SERVER数据库的存储结构数据库的存储结构v数据库的两种存储结构数据库的两种存储结构: 逻辑存

3、储结构和物理存储结构。逻辑存储结构和物理存储结构。数据库物理存储结构表现为存储数据的各类操作系统数据库物理存储结构表现为存储数据的各类操作系统文件,文件,SQL Server 2008 R2数据库在磁盘上是以文件数据库在磁盘上是以文件为单位存储的,由数据文件和事物日志文件组成,每为单位存储的,由数据文件和事物日志文件组成,每个数据库至少要具有两种操作系统文件:一个数据文个数据库至少要具有两种操作系统文件:一个数据文件和一个事务日志文件。件和一个事务日志文件。数据库的逻辑存储结构,是指数据库有哪些性质的信数据库的逻辑存储结构,是指数据库有哪些性质的信息组成,即一个数据库由若干用户可视的各种数据库

4、息组成,即一个数据库由若干用户可视的各种数据库对象构成,诸如表、视图、索引、存储过程等。对象构成,诸如表、视图、索引、存储过程等。 4.1.1 数据库对象数据库对象v数据库的逻辑存数据库的逻辑存储结构储结构数据库的逻辑存储数据库的逻辑存储结构,是指数据库结构,是指数据库有哪些性质的信息有哪些性质的信息组成,即一个数据组成,即一个数据库由若干用户可视库由若干用户可视的各种数据库对象的各种数据库对象构成,诸如表、视构成,诸如表、视图、索引、存储过图、索引、存储过程等。程等。vSQL Server 2008 R2中常用的数据库对象中常用的数据库对象1.表:表:表是数据库中用于容纳所有数据的最常用的数

5、据库对象,由行和列组成的二维的行列结构。2.视图:视图:视图是用户查看数据库表中数据的一种方式,它其实相当于一种虚拟表,但是可以像使用真实表一样使用视图。视图又被称为一种逻辑对象,并不占用物理空间,其作用像相当于查询,所包含的列和行的数据只来源于视图所查询的表(这种实际的表称为视图的基表),在引用视图时动态生成。3.索引:索引:数据库中的索引类似于书籍中的目录。对一个没有索引的表进行的查询操作,系统将检查表中的每一个数据行,这就好比在一本没有目录的书中查找信息。4.存储过程:存储过程:存储过程是SQLServer2008R2服务器上一组预编译的Transact-SQL语句,它可以接受参数、返回

6、状态值和参数值,并且可以嵌套调用。使用服务器上存储过程而不使用客户机本地上的Transact-SQL程序的优点有:保证各个客户端操作一致性,提供安全机制(有权限的才能操作)及减少网络传输等。5.触发器:触发器:触发器是一种特殊类型的存储过程,当执行某些操作导致表中的数据被修改时,触发器会自动触发执行。它主要用来实现复杂的数据完整性。6.函数:函数:SQLServer2008R2中包含有大量的函数,我们用函数可以完成特定的计算功能。在SQLServer2008R2中除了有内置函数,还允许用户自定义函数。 4.1.2 数据库数据库文件及文件组文件及文件组v数据库的物理存储结构数据库的物理存储结构数

7、据库的物理存储结构,表现为存储数据的各类操作数据库的物理存储结构,表现为存储数据的各类操作系统文件,系统文件,SQL Server 2008 R2数据库在磁盘上是以数据库在磁盘上是以文件为单位存储的,由数据文件和事物日志文件组成,文件为单位存储的,由数据文件和事物日志文件组成,每个数据库至少要具有两种操作系统文件:一个数据每个数据库至少要具有两种操作系统文件:一个数据文件和一个事务日志文件。文件和一个事务日志文件。数据文件可以隶属于某个文件组中以便于对该文件中数据文件可以隶属于某个文件组中以便于对该文件中数据存储的管理。数据存储的管理。数据文件:数据文件:又可以分成主数据文件和次数据文件两种形

8、式。主数据文件是数据库的起点,用来存储数据库的启动信息和部分或全部数据,每一个数据库都有且仅有一个主数据文件。主数据文件名称的默认后缀是mdf。次数据文件是可选的,它们可以存储不在主数据文件中的全部数据和对象。数据库既可能没有次数据文件,也可能有多个次数据文件。次数据文件名称的默认后缀是ndf。事务日志文件:事务日志文件:事务事务就是一个单元的工作,该单元的工作要么全部完成,要么全部不完成。SQLServer2008R2系统具有事务功能,可以保证数据库操作的一致性和完整性。事务日志以操作系统文件的形式存在,在数据库中被称为事务日志文件。每一个数据库都至少有一个事务日志文件。事务日志文件名称的后

9、缀默认是ldf。主数据文件次数据文件事务日志文件文件组文件组文件组就是文件的逻辑集合。为了方便数据的管理和分文件组就是文件的逻辑集合。为了方便数据的管理和分配,文件组允许对文件进行分组以便于管理数据的分配或配,文件组允许对文件进行分组以便于管理数据的分配或放置,可以把一些指定的文件组合在一起。放置,可以把一些指定的文件组合在一起。也就是说:当你的数据库中包含很多数据文件时,你可以将这些数也就是说:当你的数据库中包含很多数据文件时,你可以将这些数据文件存储在不同的地方,然后用文件组把它们作为一个单元来管理。据文件存储在不同的地方,然后用文件组把它们作为一个单元来管理。文件组对组内的所有文件都使用

10、按比例填充策略,即当将数据写入文件文件组对组内的所有文件都使用按比例填充策略,即当将数据写入文件组时,组时,SQLServer2008R2根据文件中的可用空间量将按一定比例的根据文件中的可用空间量将按一定比例的数据写入文件组的每个文件,而不是将所有的数据先写满第一个文件,数据写入文件组的每个文件,而不是将所有的数据先写满第一个文件,接着再写入下一个文件。接着再写入下一个文件。例如,在某个数据库中,例如,在某个数据库中,3个文件个文件(data1.ndf、data2.ndf和和data3.ndf)分别创建在分别创建在3个不同的磁盘驱动器中,然后为它们指定一个个不同的磁盘驱动器中,然后为它们指定一

11、个文件组文件组fgroup1。以后,所创建的表可以明确指定放在文件组。以后,所创建的表可以明确指定放在文件组fgroup1上。对该表中数据的查询将分布在这上。对该表中数据的查询将分布在这3个磁盘上,因此,可以通过执行个磁盘上,因此,可以通过执行并行访问而提高查询性能。在创建表时,不能指定将表放在某个文件上,并行访问而提高查询性能。在创建表时,不能指定将表放在某个文件上,只能指定将表放在某个文件组上。因此,如果希望将某个表放在特定的只能指定将表放在某个文件组上。因此,如果希望将某个表放在特定的文件上,那么必须通过创建文件组来实现。文件上,那么必须通过创建文件组来实现。文件组文件组SQLServe

12、r2008R2一共有三种类型的文件组,它们一共有三种类型的文件组,它们分别是主文件组分别是主文件组(primary)、用户定义文件组,还可选中一、用户定义文件组,还可选中一个文件组为默认文件组个文件组为默认文件组(default)。SQLServer2008R2至至少包含一个文件组,即主文件组。主文件组包含主数据文少包含一个文件组,即主文件组。主文件组包含主数据文件,存放系统表格等。件,存放系统表格等。Primary不能被更改。默认文件组不能被更改。默认文件组(default),用来存放任何没有指定文件组的对象。任何),用来存放任何没有指定文件组的对象。任何时候只能有一个文件组被指定为时候只能

13、有一个文件组被指定为default,默认情况下主文,默认情况下主文件组被当做默认的文件组。件组被当做默认的文件组。使用文件和文件组时,应该考虑下列因素:使用文件和文件组时,应该考虑下列因素:一个文件或者文件组只能用于一个数据库,不能是多个数据库;一个文件或者文件组只能用于一个数据库,不能是多个数据库;一个文件只能是某一个文件组的成员,不能是多个文件组的成员;一个文件只能是某一个文件组的成员,不能是多个文件组的成员;数据库的数据信息和日志信息不能放在同一个文件中,即数数据库的数据信息和日志信息不能放在同一个文件中,即数据文件和日志文件总是分开的;据文件和日志文件总是分开的;日志文件永远也不能是任

14、何文件组的一部分。日志文件永远也不能是任何文件组的一部分。4.1.3 SQL Server 2008 R2数据库类型vSQL Server 2008 R2中的数据库有两种类型:中的数据库有两种类型: 系统数据库和用户数据库。系统数据库和用户数据库。1.系统数据库系统数据库系统数据库由master、model、msdb、tempdb和隐藏的Resource数据库组成。(1)master数据库:master数据库用于记录SQLServer2008R2中所有服务器级别的对象。这包括了服务器登录帐户、链接服务器定义以及端点。master数据库同时还记录服务器上其他所有数据库的信息。SQLServer2

15、008R2并不把系统信息存储在master数据库中,而是存储在Resource数据库中。不过在master数据库中,系统信息逻辑呈现为sys架构。4.1.3 SQL Server 2008 R2数据库类型(2)model数据库:model数据库是一个模板数据库。每当创建新的数据库时(包括系统数据库tempdb),就会创建model数据库的一个副本,并以新创建数据库的名称重命名该副本。(3)msdb数据库可以把msdb数据库看作是SQLServer代理的数据库,这是因为SQLServer2008R2代理广泛地使用msdb数据库存储自动化作业定义、作业计划、操作员定义以及警报定义。(4)tempd

16、b数据库SQLServer2008R2使用tempdb数据库临时性地存储数据。在SQLServer2008R2操作中,tempdb数据库有广泛的运用,因此要确保SQLServer2008R2数据库有效的操作,就需要仔细计划和评估tempdb数据库的规模和位置。(5)Resource数据库它是一个只读数据库,包含SQLServer2008R2实例使用的所有系统对象。4.1.3 SQL Server 2008 R2数据库类型2.用户数据库用户数据库用户数据库就是用户创建的数据库。它们存储数据应用程序所使用的数据,这也是拥有一个数据库服务器的主要目的。4.2 数据库的创建数据库的创建v数据库创建的方

17、法:数据库创建的方法:创建数据库的方法有多种:使用创建数据库的方法有多种:使用ManagementStudio工具创建数据库、可以使用工具创建数据库、可以使用CREATEDATABASE语句语句创建数据库创建数据库 。在创建数据库之前要需估算所建数据库的大小和增幅。在创建数据库之前要需估算所建数据库的大小和增幅。创建数据库就是确定数据库名称、文件名称、数据文件创建数据库就是确定数据库名称、文件名称、数据文件大小、数据库的字符集、是否自动增长以及如何自动增大小、数据库的字符集、是否自动增长以及如何自动增长等信息的过程。数据库的名称必须满足系统的标识符长等信息的过程。数据库的名称必须满足系统的标识

18、符规则。在命名数据库时,一定要使数据库名称简短和有规则。在命名数据库时,一定要使数据库名称简短和有一定的含义。一定的含义。4.2.1使用使用Management Studio工具创建数据库工具创建数据库要求:创建一个酒店管理系统所使用的数据库,名为JdglSys。因为酒店管理系统中涉及到的容纳数据的表大致有7个,估计总数据量为20000行记录,根据课本介绍的估算数据库大小的方法,估算JdglSys数据库中的数据文件的大小为10M,日志文件为3M。v步骤步骤:(1)从“开始”-“程序”-“MicrosoftSQLServer2008R2”-“SQLServer2008R2ManagementSt

19、udio”点击后,打开该工具,首先点击“连接”到SQLServer2008R2数据库引擎实例,详见图4-3连接ManagementStudio工具。4.2.1使用使用Management Studio工具创建数据库工具创建数据库 图4-3 连接Management Studio工具4.2.1使用使用Management Studio工具创建数据库工具创建数据库(2)展开该实例后,如图4-4ManagementStudio工具界面图。图4-4ManagementStudio工具界面4.2.1使用使用Management Studio工具创建数据库工具创建数据库(3)右击上图中的“数据库”,在弹出

20、菜单中选择“新建数据库”,会弹出新建数据库窗口,如图4-5新建数据库所示。在“数据库名称”项中输入新数据库的名称JdglSys。下面数据库文件中的逻辑名称就会自动设置完成,注意:此处要修改一下数据文件的大小为10M,日志文件的大小为3M,单击“确定”按钮即完成。图4-5新建数据库JdglSys4.2.1 使用使用Management Studio工具创建数据库工具创建数据库(4)创建完成JdglSys数据库后的ManagementStudio的工具界面如下:图4-6ManagementStudio工具界面新建的JdglSys数据库4.2.2 使用使用T-SQL语言创建数据库语言创建数据库v C

21、REATE DATABASE语句的常用语法格式如下语句的常用语法格式如下 :CREATEDATABASEdatabase_nameONPRIMARY(NAME=logical_file_name,FILENAME=os_file_name,SIZE=size,MAXSIZE=max_size|UNLIMITED,FILEGROWTH=growth_increment),.nLOGON(NAME=logical_file_name,FILENAME=os_file_name,SIZE=size,MAXSIZE=max_size|UNLIMITED,FILEGROWTH=growth_increm

22、ent),.n4.2.2 使用使用T-SQL语言创建数据库语言创建数据库Createdatabase语句中参数说明:database_name:新数据库的名称。ON:指定用来存储数据库数据部分的磁盘文件(数据文件)。LOGON:指定显式定义用来存储数据库日志的磁盘文件(日志文件)。NAMElogical_file_name:指定文件的逻辑名称。FILENAME:指定操作系统(物理)文件名称。SIZE:指定文件的大小。MAXSIZE:指定文件可增大到的最大大小。FILEGROWTH:指定文件的自动增量。也可以指定百分比。4.2.1 使用使用Management Studio工具创建数据库工具创建

23、数据库【例4-1】创建JdglSys数据库,其数据文件初始大小为10MB,最大值UNLIMITED,文件大小增长量为1MB,日志文件初始大小为3MB,最大大小为UMLIMITED,增量为10%。文件的位置在默认安装的位置。4.2.1 使用使用Management Studio工具创建数据库工具创建数据库具体的T-SQL语句为:CREATEDATABASEJdglSysONPRIMARY(NAME=JdglSys_Data,FILENAME=C:ProgramFilesMicrosoftSQLServerMSSQL10.MSSQLSERVERMSSQLDATAJdglSys_Data.mdf,S

24、IZE=10MB,MAXSIZE=UNLIMITED,FILEGROWTH=1)LOGON(NAME=JdglSys_Log,FILENAME=C:ProgramFilesMicrosoftSQLServerMSSQL10.MSSQLSERVERMSSQLDATAJdglSys_Log.ldf,SIZE=3MB,MAXSIZE=UNLIMITED,FILEGROWTH=10%)GO4.2.2 使用使用T-SQL语言创建数据库语言创建数据库v连接上连接上ManagementStudio工具,点击右上角的工具,点击右上角的“新建查询新建查询”,出现如下图示,在其中输入该语句,点击,出现如下图示,在

25、其中输入该语句,点击“执行执行”即可。即可。4.2.3 查看数据库的相关信息查看数据库的相关信息vSQLServer2008R2系统中,可以使用一些系统视图、存储过程查看有关数据库的基本信息。v常用的有以下几个:1.sys.databases:可以查看该服务器上所有数据库的基本信息。图4-8使用sys.databases系统视图查看服务器上的数据库4.2.3 查看数据库的相关信息查看数据库的相关信息2.sp_helpdb:可以查看该服务器上所有数据库或指定单个数据库的基本信息。如图4-9所示存储过程查看所有数据库。使用sp_helpdbJdglSys命令可以查看单个数据库的详细信息。图4-9使

26、用sp_helpdb存储过程查看所有数据库4.2.3 查看数据库的相关信息查看数据库的相关信息使用sp_helpdbJdglSys命令可以查看单个数据库的详细信息。图4-10使用sp_helpdb存储过程查看单个数据库4.2.3 查看数据库的相关信息查看数据库的相关信息3.sp_helpfile:显示当前数据库关联的文件的名称及属性。如图4-11所示。其中,use语句用来改变当前数据库,把JdglSys数据库作为当前查询的数据库。图4-11使用sp_helpfile查看相关数据库的文件信息4.2.3 查看数据库的相关信息查看数据库的相关信息4.sp_helpfilegroup系统存储过程系统存

27、储过程查看JdglSys数据库中的所有文件组或某一个文件组的信息。如图4-12所示。图4-12使用sp_helpfilegroup查看相关数据库的文件组信息4.2.3 查看数据库的相关信息查看数据库的相关信息5.sp_spaceused系统存储过程系统存储过程显示由整个数据库保留和使用的磁盘空间。如图4-13所示。图4-13使用sp_spaceused查看数据库空间使用状况信息4.3 数据库的修改数据库的修改v数据库创建之后,根据需要可以使用数据库创建之后,根据需要可以使用ManagementStudio工具或工具或ALTERDATABASE语句对数据库进行修改。修改语句对数据库进行修改。修改

28、操作包括更改数据库名称、扩大数据库、修改数据库文件、操作包括更改数据库名称、扩大数据库、修改数据库文件、管理数据库文件组等。管理数据库文件组等。v数据库修改的方法:数据库修改的方法:修改数据库的方法也有两种:使用修改数据库的方法也有两种:使用ManagementStudio工具修改数据库、可以使用工具修改数据库、可以使用alterDATABASE语语句创建数据库句创建数据库 。4.3.1使用使用Management Studio工具修改数据库工具修改数据库v1.重命名数据库重命名数据库数据库创建之后,一般情况下不要更改数据库的名称,数据库创建之后,一般情况下不要更改数据库的名称,因为许多应用程

29、序都可能使用了该数据库的名称。数据库因为许多应用程序都可能使用了该数据库的名称。数据库名称更改之后,需要修改相应的应用程序。但是,如果确名称更改之后,需要修改相应的应用程序。但是,如果确实需要更改数据库名称,可以使用实需要更改数据库名称,可以使用ManagementStudio工工具修改数据库很轻松的修改数据库名。比如,修改数据库具修改数据库很轻松的修改数据库名。比如,修改数据库JdglSys为为hotel。4.3.1使用使用Management Studio工具修改数据库工具修改数据库“选中选中”要更名的要更名的数据库数据库“右击右击”“重命名重命名”JdglSys可更改为可更改为hotel

30、4.3.1使用使用Management Studio工具修改数据库工具修改数据库v2.扩大数据库扩大数据库在在SQLServer2008R2系统中,如果数据库的数据量系统中,如果数据库的数据量不断膨胀,可以根据需要扩大数据库的尺寸。有不断膨胀,可以根据需要扩大数据库的尺寸。有3种扩大种扩大数据库的方式。第一种方式是设置数据库为自动增长方式,数据库的方式。第一种方式是设置数据库为自动增长方式,可以在创建数据库时设置。第二种方式是直接修改数据库可以在创建数据库时设置。第二种方式是直接修改数据库的数据文件或日志文件的大小,第三种方式是在数据库中的数据文件或日志文件的大小,第三种方式是在数据库中增加新

31、的次要数据文件或日志文件。增加新的次要数据文件或日志文件。4.3.1使用使用Management Studio工具修改数据库工具修改数据库例如,例如,JdglSys数据库的大小是数据库的大小是13MB,如果希望扩大到,如果希望扩大到20MB(其中,数据文件大小(其中,数据文件大小15M,日志文件大小,日志文件大小5M)。)。有三种方法实现:有三种方法实现:(1)、那么可以通过在创建数据库时,设定文件为自动增长)、那么可以通过在创建数据库时,设定文件为自动增长的,一旦数据库中的数据量增多,数据文件或日志文件容量不的,一旦数据库中的数据量增多,数据文件或日志文件容量不够就会自动扩展增大。(此方法不

32、再说明)够就会自动扩展增大。(此方法不再说明)(2)、还可以使用修改文件的大小把数据文件改为)、还可以使用修改文件的大小把数据文件改为15M,把,把日志文件改为日志文件改为5M。(介绍该方法)(介绍该方法)(3)、还可以使用第三种方法,为该数据库增加一个大小为)、还可以使用第三种方法,为该数据库增加一个大小为5MB的数据文件、一个的数据文件、一个2M的日志文件来达到。的日志文件来达到。(介绍该方法)(介绍该方法)4.3.1 使用使用Management Studio工具修改数据库工具修改数据库v第二种方法:第二种方法:在在ManagementStudio工具,工具,“右击右击”JdglSys,

33、在弹出菜单中选择,在弹出菜单中选择“属性属性”,就会弹出,就会弹出“数数据库属性据库属性”对话框。对话框。v选择选择“文件文件”,就,就可以看到该数据库相关可以看到该数据库相关的文件,修改其中的数的文件,修改其中的数据文件的初始大小为据文件的初始大小为15M,日志文件的初始大小为,日志文件的初始大小为5M,点击,点击“确定确定”即可即可。4.3.1 使用使用Management Studio工具修改数据库工具修改数据库v第三种方法:第三种方法:v在在ManagementStudio工具,工具,“右击右击”JdglSys,就会弹,就会弹出出“数据库属性数据库属性”对话框,直接点击下面的对话框,直

34、接点击下面的“添加添加”按钮,按钮,在其中添加一行,把逻辑名称修改为在其中添加一行,把逻辑名称修改为JdglSys2,初始大小,初始大小设为设为5M,其他不做修改。再点击,其他不做修改。再点击“添加添加”按钮,添加一行,按钮,添加一行,把逻辑名称修改为把逻辑名称修改为JdglSys_log2,文件类型点击下拉菜单,文件类型点击下拉菜单,修改为修改为“日志日志”,初始大小设定为,初始大小设定为2M,点击确定。也能够,点击确定。也能够实现将数据库扩容为实现将数据库扩容为20M。4.3.1使用使用Management Studio工具修改数据库工具修改数据库v图4-16使用ManagementStu

35、dio工具增加文件来扩大数据库4.3.1使用使用Management Studio工具修改数据库工具修改数据库v3.添加文件组添加文件组在数据库中可以很方便的添加新的文件组,可以在在数据库中可以很方便的添加新的文件组,可以在ManagementStudio工具,工具,【选中选中】要添加文件组的数据要添加文件组的数据库,库,【右击右击】,在弹出菜单中选中,在弹出菜单中选中【属性属性】,选择,选择【文件文件组组】,点击下面的,点击下面的【添加添加】按钮,就可以添加新的文件组。按钮,就可以添加新的文件组。例如在数据库例如在数据库JdglSys中添加文件组中添加文件组SECOND。4.3.2 使用使用

36、T-SQL语言修改数据库语言修改数据库数据库的修改操作还可以使用数据库的修改操作还可以使用T-SQL语句中的语句中的alterdatabase来进行修改完成。来进行修改完成。Alterdatabase语句的语法格式是:语句的语法格式是:ALTERDATABASEdatabase_nameADDFILE,nTOFILEGROUPfilegroup_name|ADDLOGFILE,n|REMOVEFILElogical_file_nameWITHDELETE|MODIFYFILE|MODIFYname= new_database_name|ADDfilegroupfilegroup_name|MO

37、DIFYfilegroupfilegroup_nameDEFAULT|REMOVEfilegroupfilegroup_name4.3.2 使用使用T-SQL语言修改数据库语言修改数据库其中:可以是:(NAME=logical_file_name,FILENAME=os_file_name,SIZE=size,MAXSIZE=max_size|UNLIMITED,FILEGROWTH=growth_increment),.n4.3.2 使用使用T-SQL语言修改数据库语言修改数据库v可以使用可以使用AlterDatabase命令来完成数据库修改操作。如:命令来完成数据库修改操作。如:重命名数据

38、库、扩大数据库、修改数据库文件、管理数据重命名数据库、扩大数据库、修改数据库文件、管理数据库文件组等。库文件组等。重命名数据库重命名数据库使用使用ALTERDATABASE语句更改数据库名称的语法形式简写如下:语句更改数据库名称的语法形式简写如下:ALTERDATABASEdatabase_nameModifyName=new_database_name;【例4-2】把demodb数据库更名为Studentdb。ALTERDATABASEdemodbModifyName=Studentdb;4.3.2 使用使用T-SQL语言修改数据库语言修改数据库修改数据库文件修改数据库文件【例例4-3】数据

39、库数据库JdglSys的数据文件的数据文件JdglSys.mdf的初始分配的初始分配大小为大小为10MB,请将其大小扩充,请将其大小扩充20MB。ALTERDATABASEJdglSysMODIFYFILE(NAME=JdglSys,FILENAME=C:ProgramFilesMicrosoftSQLServerMSSQL10_50.MSSQLSERVERMSSQLDATAJdglSys.mdf,SIZE=20MB)GO4.3.2 使用使用T-SQL语言修改数据库语言修改数据库添加数据库文件添加数据库文件【例4-4】给数据库JdglSys添加一个新的数据文件,逻辑名称为JdglSys3,物理

40、名称及位置为:C:ProgramFilesMicrosoftSQLServerMSSQL10_50.MSSQLSERVERMSSQLDATAJdglSys3.ndf。大小为5M,每次增长1M,最大值为15M。增加一个日志文件逻辑名称为JdglSys_log3,物理名称及位置:C:ProgramFilesMicrosoftSQLServerMSSQL10_50.MSSQLSERVERMSSQLDATAJdglSys_log3.ldf。大小为2M,每次增长1M,最大值5M。4.3.2 使用使用T-SQL语言修改数据库语言修改数据库ALTERDATABASEJdglSysADDFILE(NAME=J

41、dglSys3,FILENAME=C:ProgramFilesMicrosoftSQLServerMSSQL10_50.MSSQLSERVERMSSQLDATAJdglSys3.ndf,SIZE=5MB,MAXSIZE=15MB,FILEGROWTH=1MB)GoALTERDATABASEJdglSysADDLOGFILE(NAME=JdglSys_log3,FILENAME=C:ProgramFilesMicrosoftSQLServerMSSQL10_50.MSSQLSERVERMSSQLDATAJdglSys_log3.ldf,SIZE=1MB,MAXSIZE=5MB,FILEGROWT

42、H=1MB)Go4.3.2 使用使用T-SQL语言修改数据库语言修改数据库4.3.2 使用使用T-SQL语言修改数据库语言修改数据库添加数据文件到指定的文件组添加数据文件到指定的文件组【例4-5】给数据库JdglSys添加一个新的数据文件到文件组SECOND,逻辑名称为JdglSys4,物理名称及位置为:C:ProgramFilesMicrosoftSQLServerMSSQL10_50.MSSQLSERVERMSSQLDATAJdglSys4.ndf。大小为2M,每次增长1M,最大值为10M。4.3.2 使用使用T-SQL语言修改数据库语言修改数据库alterdatabaseJdglSysa

43、ddfile(NAME=JdglSys4,FILENAME=C:ProgramFilesMicrosoftSQLServerMSSQL10_50.MSSQLSERVERMSSQLDATAJdglSys4.ndf,SIZE=1MB,MAXSIZE=10MB,FILEGROWTH=1MB)tofilegroupsecondGo;4.3.2 使用使用T-SQL语言修改数据库语言修改数据库4.3.2 使用使用T-SQL语言修改数据库语言修改数据库管理数据库文件组管理数据库文件组(1)、添加新的文件组)、添加新的文件组在默认情况下,每一个数据库都有一个默认的在默认情况下,每一个数据库都有一个默认的PRI

44、MARY文件文件组。这个组。这个PRIMARY文件组是不能被删除的。用户可以定义自己文件组是不能被删除的。用户可以定义自己的文件组。使用的文件组。使用ALTERDATABASE新建文件组的命令如下:新建文件组的命令如下:ALTERDATABASEdatabase_nameADDFILEGROUPfilegroup_name;【例例4-6】给给JdglSys数据库添加一个新的文件组数据库添加一个新的文件组Third。ALTERDATABASEJdglSysADDFILEGROUPthird; (2)、修改数据库默认的文件组)、修改数据库默认的文件组默认文件组是指在新增数据库数据文件时,如果没有明

45、确指定,默认文件组是指在新增数据库数据文件时,如果没有明确指定,那么该文件将放置在默认文件组中。用户可以使用那么该文件将放置在默认文件组中。用户可以使用ALTERDATABASE语句设置指定数据库中的默认文件组,其命令如下:语句设置指定数据库中的默认文件组,其命令如下:ALTERDATABASEdatabase_nameMODIFYFILEGROUPfilegroup_nameDEFAULT;4.3.2 使用使用T-SQL语言修改数据库语言修改数据库设置默认文件组时,只能将现有的文件组设置为默认文件设置默认文件组时,只能将现有的文件组设置为默认文件如图所示。如图所示。注意,不能在新建文件组的同

46、时设置该文件组为默认文件组。注意,不能在新建文件组的同时设置该文件组为默认文件组。在下图所示的示例中,在新建在下图所示的示例中,在新建FORTH文件组的同时将其文件组的同时将其设置为默认文件组,结果操作失败。设置为默认文件组,结果操作失败。4.3.2 使用使用T-SQL语言修改数据库语言修改数据库虽然用户可以指定默认文件组,但是系统表等信息总是放在虽然用户可以指定默认文件组,但是系统表等信息总是放在PRIMARY文件组中。如果文件组不再需要了,还可以将文件组中。如果文件组不再需要了,还可以将该文件组删除。需要注意的是,只有当文件组中不再包含数该文件组删除。需要注意的是,只有当文件组中不再包含数

47、据文件时,才可以将该文件组删除。据文件时,才可以将该文件组删除。4.3.2 使用使用T-SQL语言修改数据库语言修改数据库【例例4-7】删除除JdglSys数据数据库的空文件的空文件组Third。语句:句:ALTER DATABASE JdglSys REMOVE FILEGROUP third;执行行结果如果如图 。4.4 数据库的分离和附加数据库的分离和附加v 数据库的分离数据库的分离分离数据库是指将数据库从分离数据库是指将数据库从SQLServer2008R2实例实例中删除,但是该数据库的数据文件和事务日志文件依然保中删除,但是该数据库的数据文件和事务日志文件依然保持不变。这样可以将该数

48、据库附加到任何的持不变。这样可以将该数据库附加到任何的SQLServer2008R2实例中。实例中。v数据库的附加数据库的附加当希望将分离后的数据库附加到某个当希望将分离后的数据库附加到某个SQLServer2008R2实例中时,可以使用实例中时,可以使用ManagementStudio工具、也可工具、也可以使用以使用CREATEDATABASE语句。附加数据库时所有的数语句。附加数据库时所有的数据文件必须都是可用的。据文件必须都是可用的。4.4.1 数据库的分离数据库的分离 v 数据库的分离可以使用数据库的分离可以使用ManagementStudio工具来执行工具来执行分离操作,当然也可以使

49、用分离操作,当然也可以使用sp_detach_db存储过程来执存储过程来执行数据库分离操作。行数据库分离操作。例如,如果想分离例如,如果想分离JdglSys数据库,使用数据库,使用ManagementStudio工具操作。步骤如下:工具操作。步骤如下: (1)选中)选中JdglSys数据库,数据库,【右击右击】,在弹出的菜单中选中,在弹出的菜单中选中【任务任务】子菜单中选择子菜单中选择【分离分离.】如图如图4-25,会弹出,会弹出【分分离数据库离数据库】的界面。的界面。4.4.1 数据库的分离数据库的分离 v(2)在分离数据库页面上,)在分离数据库页面上,可以对要分离的数据库做以可以对要分离的

50、数据库做以设定,点击设定,点击【确定确定】,即可。,即可。如下图所示。如下图所示。 图图4-25分离数据库分离数据库4.4.1 数据库的分离数据库的分离 v也可以使用也可以使用sp_detach_db系统存储过程来分离数据库,系统存储过程来分离数据库,执行如图执行如图4-27所示的命令。所示的命令。 图图4-27使用系统存储过程分离数据库使用系统存储过程分离数据库4.4.2 数据库的附加数据库的附加 v如果希望将分离后的如果希望将分离后的JdglSys数据库附加到指定的数据库附加到指定的SQLServer2008R2实例中,在实例中,在ManagementStudio工具中工具中操作如下:操作

51、如下:(1)在)在ManagementStudio工具中选中最上端的工具中选中最上端的【数据库数据库】,【右击右击】在弹出的菜单中选择在弹出的菜单中选择【附加附加】,如图:,如图: 图图4-28使用使用MangementStudio工具附加数据库工具附加数据库4.4.2 数据库的附加数据库的附加 (2)在弹出的在弹出的【附加数据库附加数据库】页面上,点击页面上,点击【添加添加】按钮,在弹出的按钮,在弹出的【定位数据库文件定位数据库文件】对话框中,选择对话框中,选择JdglSys数据库的主数据文件数据库的主数据文件JdglSys.mdf,点击,点击【确定确定】。如图。如图4-29所示。所示。 图

52、图4-29选中要附加数据库选中要附加数据库的主数据文件的主数据文件4.4.2 数据库的附加数据库的附加 (3)当选中附加数据库的主数据文件后,其他的数据库相关文件都已经当选中附加数据库的主数据文件后,其他的数据库相关文件都已经关联在数据库中,如图关联在数据库中,如图4-30所示。最后,添加所示。最后,添加【确定确定】即可。即可。 图图4-30要附加数据库的其他数据文件要附加数据库的其他数据文件4.4.2 数据库的附加数据库的附加 CREATEDATABASE语句来附加数据库原有的文件。语句来附加数据库原有的文件。【例例4-8】写写CREATEDATABASE语句附加数据库语句附加数据库Jdgl

53、Sys。语句:语句:CREATEDATABASEJdglSysON(FILENAME=C:ProgramFilesMicrosoftSQLServerMSSQL10.MSSQLSERVERMSSQLDATAJdglSys_Data.mdf)FORATTACHGO 4.5 数据库的收缩数据库的收缩v当用户数据库的数据增长到要超过它的使用空间时,必须增加用户数当用户数据库的数据增长到要超过它的使用空间时,必须增加用户数据库的容量。相反,如果指派给用户数据库过多的存储空间,可以通据库的容量。相反,如果指派给用户数据库过多的存储空间,可以通过缩减或收缩数据库来减少存储空间的浪费。过缩减或收缩数据库来减

54、少存储空间的浪费。vSQLServer2008R2采取预先分配空间的方法来建立数据库的数据文采取预先分配空间的方法来建立数据库的数据文件或日志文件,比如数据文件的空间分配了件或日志文件,比如数据文件的空间分配了100MB,而实际上只占用,而实际上只占用了了50MB空间,这样就会造成存储空间的浪费。为此,空间,这样就会造成存储空间的浪费。为此,SQLServer2008R2提供了收缩数据库的功能,允许对数据库中的每个文件进行提供了收缩数据库的功能,允许对数据库中的每个文件进行收缩,删除已经分配但没有使用的页。但注意,不能将整个数据库收收缩,删除已经分配但没有使用的页。但注意,不能将整个数据库收缩

55、到比其原始大小还要小。因此,如果数据库创建时的大小为缩到比其原始大小还要小。因此,如果数据库创建时的大小为10MB,后来增长到,后来增长到100MB,则将该数据库最小能够收缩到,则将该数据库最小能够收缩到10MB(即使假(即使假定已经删除该数据库中所有的数据)。数据库的收缩可以收缩整个数定已经删除该数据库中所有的数据)。数据库的收缩可以收缩整个数据库,也可以收缩单个文件(因日志文件收缩和数据文件差别较大,据库,也可以收缩单个文件(因日志文件收缩和数据文件差别较大,此处暂不考虑单个日志文件的收缩)。此处暂不考虑单个日志文件的收缩)。 4.5 数据库的收缩数据库的收缩v当用数据库的收缩可以使用当用

56、数据库的收缩可以使用MangementStudio工具,也工具,也可以使用可以使用T-SQL语句完成。语句完成。vSQLServer2008R2支持对数据库实行自动收缩和手工收支持对数据库实行自动收缩和手工收缩。缩。 4.5.1 使用使用Mangement Studio工具收缩用户数据库工具收缩用户数据库1.自动收缩数据库:自动收缩数据库:设定设定JdglSys数据库的收缩为自动收缩。数据库的收缩为自动收缩。(1)、在)、在ManagementStudio工具中选择工具中选择JdglSys数据库,数据库,【右击右击】该数该数据库,在弹出的菜单中选择据库,在弹出的菜单中选择【属性属性】,就会弹出

57、数据库属性页面。,就会弹出数据库属性页面。(2)、在弹出数据库属性页面上选中)、在弹出数据库属性页面上选中“选项选项”,在其他选项中,在其他选项中“自动自动”的的“自动收缩自动收缩”的值选定为的值选定为“True”。点击。点击【确定确定】即可。如图即可。如图4-32自动收自动收缩数据库。缩数据库。 图图4-32自动收缩数据库自动收缩数据库4.5.1 使用使用Mangement Studio工具收缩用户数据库工具收缩用户数据库2.手动收缩数据库:手动收缩数据库:设定设定JdglSys数据库的收缩为手动收缩。数据库的收缩为手动收缩。(1)、选中要收缩的数据库,【右击】,在弹出的快捷菜单中选择【任务

58、】【收缩】【数据库】。如左图所示。(2)、在弹出收缩数据库界面图上,即可设定手动收缩数据库。如右图。 4.5.1 使用使用Mangement Studio工具收缩用户数据库工具收缩用户数据库1.自动收缩数据库:自动收缩数据库:设定设定JdglSys数据库的收缩为自动收缩。数据库的收缩为自动收缩。(1)、在)、在ManagementStudio工具中选择工具中选择JdglSys数据库,数据库,【右击右击】该数该数据库,在弹出的菜单中选择据库,在弹出的菜单中选择【属性属性】,就会弹出数据库属性页面。,就会弹出数据库属性页面。(2)、在弹出数据库属性页面上选中)、在弹出数据库属性页面上选中“选项选项

59、”,在其他选项中,在其他选项中“自动自动”的的“自动收缩自动收缩”的值选定为的值选定为“True”。点击。点击【确定确定】即可。如图即可。如图4-32自动收自动收缩数据库。缩数据库。 图图4-32自动收缩数据库自动收缩数据库4.5.2 使用使用T-SQL语句收缩数据库语句收缩数据库v 在在SQLServer2008R2系统中,使用系统中,使用T-SQL语句收缩数据语句收缩数据库也有库也有3种方式。第种方式。第1种方式是设置数据库为自动收缩,可种方式是设置数据库为自动收缩,可以通过设置以通过设置AUTO_SHRINK数据库选项实现。第数据库选项实现。第2种方式是种方式是收缩整个数据库的容量,可以

60、通过使用收缩整个数据库的容量,可以通过使用DBCCSHRINKDATABASE命令完成。第命令完成。第3种方式是收缩指定的数种方式是收缩指定的数据文件,这可以使用据文件,这可以使用DBCCSHRINKFILE命令实现。命令实现。vDBCCSHRINKDATABASE的语句格式如下:的语句格式如下:DBCCSHRINKDATABASE(database_name|database_id|0,target_percent)其中:其中:database_name|database_id|0:要收缩的数据库的名称或:要收缩的数据库的名称或ID。如果指定如果指定0,则使用当前数据库。,则使用当前数据库。

61、target_percent:数据库收缩后的数据库文件中所需的剩余可用空间百分比:数据库收缩后的数据库文件中所需的剩余可用空间百分比。4.5.2 使用使用T-SQL语句收缩数据库语句收缩数据库 例如:将例如:将JdglSys数据库的空间缩减至可用剩余空间为数据库的空间缩减至可用剩余空间为60%。语句为:语句为:DBCCSHRINKDATABASE(JdglSys,60);图4-36设定手动收缩文件4.6 数据库删除数据库删除v 当不需要数据库时,可以删除它,即删除数据库和数据库当不需要数据库时,可以删除它,即删除数据库和数据库使用的磁盘文件。删除数据库可以通过使用的磁盘文件。删除数据库可以通过

62、ManagementStudio工具删除,也可以使用工具删除,也可以使用T-SQL语句删除数据库。语句删除数据库。1.使用使用ManagementStudio工具删除数据库工具删除数据库删除数据库的步骤:删除数据库的步骤:选中要删除的数据库,选中要删除的数据库,【右击右击】,在弹出的菜单中选择,在弹出的菜单中选择【删删除除】,就会弹出,就会弹出【删除对象删除对象】页面,在其上就是要删除的数据页面,在其上就是要删除的数据库信息,点击库信息,点击【确定确定】即可删除该数据库。如图即可删除该数据库。如图4-38删除数据删除数据库。库。图图4-38删除数据库删除数据库4.6 数据库删除数据库删除2.使

63、用使用T-SQL语言删除数据库语言删除数据库删除数据库也可以是用删除数据库也可以是用DROPDATABASE语句来删除。语句来删除。DROPDATABASE语句的语法是:语句的语法是:DROPDATABASEdatabase_name,n;例如:使用例如:使用DROPDATABASE语句删除数据库语句删除数据库Studentdb。语句为:语句为:DROPDATABASEStudentdb;4.7 数据库的备份和还原数据库的备份和还原v尽管尽管SQLServer2008R2提供了内置的安全性和数据保护,提供了内置的安全性和数据保护,但是病毒破坏、计算机硬件设备故障以及误操作等很可能但是病毒破坏、

64、计算机硬件设备故障以及误操作等很可能导致数据的丢失和破坏。为了能尽快恢复系统的正常工作导致数据的丢失和破坏。为了能尽快恢复系统的正常工作并把损失降低到最低,必须对系统数据进行备份,以便在并把损失降低到最低,必须对系统数据进行备份,以便在需要时能够及时恢复数据。需要时能够及时恢复数据。v在在SQLServer2008R2中,可以备份整个数据库,或者备中,可以备份整个数据库,或者备份一个或多个文件或文件组。所以,份一个或多个文件或文件组。所以,SQLServer2008R2支持支持4种备份形式:完全数据库备份(数据库备份)、差异种备份形式:完全数据库备份(数据库备份)、差异数据库备份(增量备份)、

65、事务日志备份、文件或文件组数据库备份(增量备份)、事务日志备份、文件或文件组备份备份4.7 数据库的备份和还原数据库的备份和还原v完全数据库备份:完全数据库备份:数据库备份是指对数据库的完整备份,包括所有的数据库对数据库备份是指对数据库的完整备份,包括所有的数据库对象、数据和事物日志中的事务。这种备份方式非常简便易行,象、数据和事物日志中的事务。这种备份方式非常简便易行,通常按照一个常规的时间间隔进行。在还原数据库时,只需用通常按照一个常规的时间间隔进行。在还原数据库时,只需用简单的操作即可完成数据库的恢复。恢复后的数据库与备份完简单的操作即可完成数据库的恢复。恢复后的数据库与备份完成时的数据

66、库状态一致。成时的数据库状态一致。v差异数据库备份(增量备份):差异数据库备份(增量备份):是指将最近一次完全数据库备份以来发生的数据变化备份起是指将最近一次完全数据库备份以来发生的数据变化备份起来,因此差异数据库备份实际上是一种增量数据库备份。来,因此差异数据库备份实际上是一种增量数据库备份。对于对于一个经常进行数据操作的数据库而言,需要在完全数据库备份一个经常进行数据操作的数据库而言,需要在完全数据库备份的基础上,进行差异备份。的基础上,进行差异备份。4.7 数据库的备份和还原数据库的备份和还原v事务日志备份:事务日志备份:是对数据库发生的事务进行备份,包括从上次事务日志备是对数据库发生的

67、事务进行备份,包括从上次事务日志备份、差异备份和完全数据库备份后,数据库已经执行完成的所份、差异备份和完全数据库备份后,数据库已经执行完成的所有事务。它可以在相应的数据库备份的基础上,将数据库恢复有事务。它可以在相应的数据库备份的基础上,将数据库恢复到特定的即时点或恢复到故障点时的状态。到特定的即时点或恢复到故障点时的状态。v文件或文件组备份文件或文件组备份指对数据库文件或文件夹进行备份,但其不像完全数据库备份指对数据库文件或文件夹进行备份,但其不像完全数据库备份那样同时也进行事务日志备份。使用该方法可提高数据库恢复那样同时也进行事务日志备份。使用该方法可提高数据库恢复的速度,因为仅对遭到破坏

68、的文件或文件组进行恢复。的速度,因为仅对遭到破坏的文件或文件组进行恢复。4.7.1 数据库备份数据库备份 v在进行备份之前需要先指定或创建备份设备。备份设备是在进行备份之前需要先指定或创建备份设备。备份设备是指指SQLServer2008R2中存储数据库、事务日志或文件及中存储数据库、事务日志或文件及文件组备份的存储介质。当建立一个备份设备时,需要给文件组备份的存储介质。当建立一个备份设备时,需要给其分配一个逻辑名和一个物理名。物理名是操作系统用来其分配一个逻辑名和一个物理名。物理名是操作系统用来标识备份设备的名称。逻辑名是用来标识物理备份设备的标识备份设备的名称。逻辑名是用来标识物理备份设备

69、的别名。逻辑名称永久地存储在别名。逻辑名称永久地存储在SQLServer2008R2的系统的系统表中,使用逻辑名比物理名简单的多。表中,使用逻辑名比物理名简单的多。v通过创建酒店管理数据库通过创建酒店管理数据库JdglSys的备份来说明数据库的的备份来说明数据库的备份。备份。4.7.1 数据库备份数据库备份 1.创建备份设备创建备份设备方法有两种:使用方法有两种:使用MangementStudio工具和使用系统存储工具和使用系统存储存储存储sp_addumpdevice。此处仅介绍使用。此处仅介绍使用MangementStudio工具创建备份设备。步骤如下:工具创建备份设备。步骤如下:(1)在

70、)在“对象资源管理器对象资源管理器”窗口中,窗口中,【单击单击】服务器名称以服务器名称以展开服务器,找到展开服务器,找到【服务器对象服务器对象】并点击展开,然后,选中并点击展开,然后,选中【备份设备备份设备】(2)选中)选中【备份设备备份设备】右击,在弹出的菜单中选择右击,在弹出的菜单中选择【新建备新建备份设备份设备】,打开,打开【备份设备备份设备】对话框,如图对话框,如图4-39所示。所示。(3)在对话框中,输入要创建的设备名称及目标设备或文件,)在对话框中,输入要创建的设备名称及目标设备或文件,单击单击【确定确定】即可。如图即可。如图4-40定位备份设备对应的数据库文件定位备份设备对应的数

71、据库文件所示。所示。4.7.1 数据库备份数据库备份 图4-39 “备份份设备”对话框框图4-40 定位定位备份份设备对应的的数据数据库文件文件4.7.1 数据库备份数据库备份 2.备份操作备份操作创建好某个备份设备后,创建好某个备份设备后,就可以将该数据库备份到此设备上。就可以将该数据库备份到此设备上。备份操作的方法也有两种,可以在备份操作的方法也有两种,可以在ManagementStudio工具中进行,也可工具中进行,也可以使用以使用BACKUPDATABASE语句来进行备份。语句来进行备份。(1)使用)使用MangementStudio工具执行备份操作工具执行备份操作1)在)在“对象资源

72、管理器对象资源管理器”窗口中,窗口中,【单击单击】服务器名称以展开服务器,服务器名称以展开服务器,找到找到【数据库数据库】并点击展开,然后,选中要备份的数据库。并点击展开,然后,选中要备份的数据库。2)右击选中的备份数据库,在弹出的菜单中选择)右击选中的备份数据库,在弹出的菜单中选择【任务任务】,级联菜单中选,级联菜单中选择择【备份备份】,将弹出,将弹出【备份数据库备份数据库】对话框。如图对话框。如图4-41所示。所示。3)在)在“备份类型备份类型”列表框中,选择类型列表框中,选择类型“完整完整”。创建完整数据库备份之。创建完整数据库备份之后,可以创建差异数据库备份。对于后,可以创建差异数据库

73、备份。对于“备份组件备份组件”,选择,选择“数据库数据库”,也可,也可以根据需要选择以根据需要选择“文件组文件组”。在目标部分,可以选择添加或删除其他备份设。在目标部分,可以选择添加或删除其他备份设备。最后单击备。最后单击【确定确定】即可。即可。4.2.2 使用使用T-SQL语言创建数据库语言创建数据库图4-42“备份数据库”成功图4-41 “备份数据份数据库”对话框框图图4-42“备份数据库备份数据库”成功成功4.2.2 使用使用T-SQL语言创建数据库语言创建数据库(2)使用)使用BACKUPDATABASE语句来执行备份操作语句来执行备份操作执行执行BACKUPDATABASE语句可以创

74、建完整数据库备份,同语句可以创建完整数据库备份,同时指定要备份的数据库名称和写入完整数据库备份的备份设备。时指定要备份的数据库名称和写入完整数据库备份的备份设备。完整数据库备份的语法格式如下:完整数据库备份的语法格式如下:BACKUPDATABASEdatabase_nameTO,.nWITHDIFFERENTIAL;备份事务日志的语句为:备份事务日志的语句为:BACKUPLOGdatabase_nameTO,.nWITHNO_TRUNCATE;4.2.2 使用使用T-SQL语言创建数据库语言创建数据库其中:其中:指定用于备份操作的逻辑备份设备名或物:指定用于备份操作的逻辑备份设备名或物理备份

75、设备。理备份设备。WITHDIFFERENTIAL:指定数据库备份或文件备份应该只包:指定数据库备份或文件备份应该只包含上次完整备份后更改的数据库或文件部分。含上次完整备份后更改的数据库或文件部分。WITHNO_TRUNCATE:指定不截断日志。:指定不截断日志。4.2.2 使用使用T-SQL语言创建数据库语言创建数据库【例例4-9】完整备份数据库完整备份数据库JdglSys到指定的备份设备到指定的备份设备JdglSys_backup上。上。语句为:语句为:backupdatabaseJdglSystoJdglSys_backup;图4-43完全备份数据库4.2.2 使用使用T-SQL语言创建

76、数据库语言创建数据库【例例4-10】差异备份数据库差异备份数据库JdglSys到指定的备份设备到指定的备份设备JdglSys_backup上。上。语句为:语句为:backupdatabaseJdglSystoJdglSys_backupwithdifferential;图图4-44差异备份数据库差异备份数据库4.2.2 使用使用T-SQL语言创建数据库语言创建数据库【例例4-11】备份数据库备份数据库JdglSys的日志到备份设备的日志到备份设备JdglSys_backup,不截断日志(默认为截断)。,不截断日志(默认为截断)。语句为:语句为:backuplogJdglSystoJdglSys

77、_backupwithNO_TRUNCATE;图图4-45备份事务日志备份事务日志4.7.2 数据库还原数据库还原v 还原是备份的逆向操作。可以通过还原是备份的逆向操作。可以通过MangementStudio工工具和使用具和使用SQL语句两种方法来进行还原。此处仅介绍使用语句两种方法来进行还原。此处仅介绍使用工具还原数据库。工具还原数据库。步骤如下:步骤如下:(1)在)在“对象资源管理器对象资源管理器”窗口中,窗口中,【单击单击】服务器名称以展服务器名称以展开服务器,找到开服务器,找到【数据库数据库】并点击展开,然后,选中要还原的并点击展开,然后,选中要还原的数据库。数据库。(2)右击选中的还

78、原数据库,在弹出的菜单中选择)右击选中的还原数据库,在弹出的菜单中选择【任务任务】,级联菜单中选择级联菜单中选择【还原还原】,在下一级菜单中选择还原类型,在下一级菜单中选择还原类型,将弹出将弹出【还原数据库还原数据库】对话框。对话框。(3)在)在“选择用于还原的备份集选择用于还原的备份集”中,选择类型还原。注意:中,选择类型还原。注意:此处,必须先做一次完全数据库备份还原,才可以进行差异或此处,必须先做一次完全数据库备份还原,才可以进行差异或事务日志还原。最后单击事务日志还原。最后单击【确定确定】即可。即可。4.8 本章小结本章小结v 本章中阐述了本章中阐述了SQLServer2008R2数据

79、库管理,涉及到的数据库管理,涉及到的主要内容包括:主要内容包括:v数据库的存储结构,介绍了两方面,包括逻辑存储结构数据库的存储结构,介绍了两方面,包括逻辑存储结构(表现为各种数据库对象)和物理存储结构(指各种类型(表现为各种数据库对象)和物理存储结构(指各种类型的数据库文件)并简单介绍的数据库文件)并简单介绍SQLServer2008R2系统中的系统中的自带数据库。自带数据库。v接着介绍数据库管理方法的常用管理,包括数据库的创建、修改、分接着介绍数据库管理方法的常用管理,包括数据库的创建、修改、分离与附加、收缩、删除、备份和还原。每一种管理基本上是用两种方离与附加、收缩、删除、备份和还原。每一

80、种管理基本上是用两种方法来管理,一是法来管理,一是ManagementStudio工具、二是工具、二是T-SQL语句。在数据语句。在数据库创建的小节中除了介绍用两种方法创建数据库,还介绍了查看数据库创建的小节中除了介绍用两种方法创建数据库,还介绍了查看数据库相关信息的方法,这些查看的方法在每做过一种管理之后,都有可库相关信息的方法,这些查看的方法在每做过一种管理之后,都有可能被用到去查看是否达到想要的管理效果。能被用到去查看是否达到想要的管理效果。4.8 本章小结本章小结v修改数据库涉及到了数据库的更名、扩大容量(修改数据库涉及到了数据库的更名、扩大容量(3种方法:种方法:自动增长、扩大数据库

81、文件、增加数据库文件)、添加文自动增长、扩大数据库文件、增加数据库文件)、添加文件组。数据库的分离和附加在把数据库从一个实例转移到件组。数据库的分离和附加在把数据库从一个实例转移到另一个实例时很有用。收缩数据库可以帮助我们收回分配另一个实例时很有用。收缩数据库可以帮助我们收回分配给数据库的过多的空闲空间。不需要时可以删除数据库,给数据库的过多的空闲空间。不需要时可以删除数据库,注意删除某用户数据库之后,要及时备份注意删除某用户数据库之后,要及时备份master数据库。数据库。从安全的角度看,管理数据库还包括数据库的备份和还原。从安全的角度看,管理数据库还包括数据库的备份和还原。在备份和还原一小节中,介绍了备份和还原的基本知识和在备份和还原一小节中,介绍了备份和还原的基本知识和操作。操作。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号