09第9章数据备份与恢复.ppt
《09第9章数据备份与恢复.ppt》由会员分享,可在线阅读,更多相关《09第9章数据备份与恢复.ppt(72页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2023年6月26日 1SQL Server第9章 数据备份与恢复2023年6月26日 2第第9章数据备份与恢复章数据备份与恢复 9.19.1 数据备份概述数据备份概述 9.29.2 备份前的准备备份前的准备 9.39.3 数据库备份数据库备份 9.49.4 数据库恢复概述数据库恢复概述 9.59.5 数据库恢复数据库恢复 9.69.6 拷贝数据库文件的恢复拷贝数据库文件的恢复 9.7 9.7 数据的导入导出数据的导入导出2023年6月26日 39.19.1 数据备份概述数据备份概述 数据库中数据丢失或破坏可能是由于以下原因:数据库中数据丢失或破坏可能是由于以下原因:s计计算算机机硬硬件件故故
2、障障。如如硬硬盘盘损损坏坏会会使使得得存存储储在在上上面面的的数数据据丢失。丢失。s软软件件故故障障。由由于于软软件件设设计计不不当当或或用用户户使使用用失失误误,软软件件系系统可能会引起数据不正确。统可能会引起数据不正确。s病毒和黑客病毒和黑客。严重的病毒和黑客会破坏系统软件和数据。严重的病毒和黑客会破坏系统软件和数据。s用户对数据的失误操作用户对数据的失误操作。s自自然然灾灾害害。如如火火灾灾、洪洪水水或或地地震震等等,它它们们能能够够造造成成极极大大的破坏,从而可能毁坏计算机系统和数据。的破坏,从而可能毁坏计算机系统和数据。s盗盗窃窃。计计算算机机被被盗盗,或或一一些些重重要要数数据据被
3、被盗盗,都都会会造造成成数数据库的丢失。据库的丢失。因此,必须制作数据库副本,即进行数据库备份,以在因此,必须制作数据库副本,即进行数据库备份,以在数据库遭到破坏时能够修复数据库。数据库遭到破坏时能够修复数据库。2023年6月26日 4 9.1.1 备份策略规划备份策略规划 1 1备份什么内容?备份什么内容?用户数据库用户数据库系统数据库系统数据库 事务日志事务日志对于参加复制工作的服务器还应备份分发数据库等对于参加复制工作的服务器还应备份分发数据库等2023年6月26日 59.1.1 备份策略规划备份策略规划2采用什么备份介质?采用什么备份介质?备备份份介介质质指指将将数数据据库库备备份份到
4、到的的目目标标位位置置。SQL SQL Server Server 20052005中中,允许使用允许使用3 3中类型的备份介质:中类型的备份介质:硬硬盘盘:是是最最常常用用的的备备份份介介质质。硬硬盘盘可可以以用用于于备备份份本本地地文文件件,也也可以用于备份远程文件。可以用于备份远程文件。磁磁带带:是是大大容容量量的的备备份份介介质质,价价格格便便宜宜,容容易易保保存存。使使用用磁磁带带做做备备份份设设备备时时,要要求求磁磁带带驱驱动动器器必必须须连连接接在在SQL SQL Server Server 20052005服服务器上。务器上。命名管道:命名管道:它是一种逻辑通道,允许将它是一种
5、逻辑通道,允许将SQL ServerSQL Server连接到其他连接到其他厂家所开发的软件,提供一种特殊的备份和恢复方法。厂家所开发的软件,提供一种特殊的备份和恢复方法。2023年6月26日 69.1.1 备份策略规划备份策略规划3什么时间备份?什么时间备份?(1 1)系统数据库)系统数据库当当系系统统数数据据库库mastermaster、msdbmsdb和和modelmodel中中任任何何一一个个被被修修改改以后,都要将其备份。以后,都要将其备份。注意:不要备份数据库注意:不要备份数据库tempdbtempdb,因它仅包含临时数据。因它仅包含临时数据。(2 2)用户数据库)用户数据库当创建
6、数据库和数据库对象或加载数据时,应备份数当创建数据库和数据库对象或加载数据时,应备份数据库;当为数据库创建索引时,应备份数据库;当执据库;当为数据库创建索引时,应备份数据库;当执行了不记日志的行了不记日志的SQLSQL命令(命令(BACKUPLOG WITH BACKUPLOG WITH NO_LOGNO_LOG、WRITETEXTWRITETEXT、UPDATETEXTUPDATETEXT、SELECT INTOSELECT INTO、BCPBCP命令等)时,应备份数据库。命令等)时,应备份数据库。2023年6月26日 79.1.1 备份策略规划备份策略规划4备份频率如何?备份频率如何?备份
7、频率就是相隔多长时间备份。备份频率就是相隔多长时间备份。如如果果数数据据库库系系统统主主要要为为联联机机事事务务处处理理,动动态态数数据据比比较较多多,则则应应当当经经常常备备份份数数据据库库;如如果果数数据据库库只只做做一一些些少少量量工工作作或或主主要要用用于于查查询询分分析析、决决策策支支持持,就就不不需需要要经经常常备份。备份。如果采用完全数据库备份,备份频率可以低些,而如果采用完全数据库备份,备份频率可以低些,而采用差异备份,备份频率就应该高些。采用差异备份,备份频率就应该高些。2023年6月26日 89.1.1 备份策略规划备份策略规划5采用什么备份方法?采用什么备份方法?(1 1
8、)完全数据库备份)完全数据库备份这种方法按常规定期备份整个数据库,包括事务日志。这种方法按常规定期备份整个数据库,包括事务日志。(2 2)数据库和事务日志备份)数据库和事务日志备份这种方法是在两次完全数据库备份期间进行事务日志备份,这种方法是在两次完全数据库备份期间进行事务日志备份,所备份的事务日志记录了两次数据库备份之间所有的数据库所备份的事务日志记录了两次数据库备份之间所有的数据库活动记录。活动记录。(3 3)差异备份)差异备份差异备份只备份自上次数据库备份后发生更改的部分数据库。差异备份只备份自上次数据库备份后发生更改的部分数据库。2023年6月26日 99.1.2 数据一致性检查数据一
9、致性检查 1检查点机制检查点机制 检查点机制是自动把已经完成的事务从缓冲区写入数检查点机制是自动把已经完成的事务从缓冲区写入数据库文件的一种手段。在执行数据库备份前,应执行据库文件的一种手段。在执行数据库备份前,应执行CHECKPOINTCHECKPOINT语句强制执行一个检查点检查,把所有脏页数语句强制执行一个检查点检查,把所有脏页数据写入数据库,使所有已经完成的事务被真正记录据写入数据库,使所有已经完成的事务被真正记录。2执行执行DBCC 在执行备份前,还应执行在执行备份前,还应执行DBCCDBCC语句检测数据库逻辑上语句检测数据库逻辑上和物理上的一致,从而在备份前排除数据库中可能存在的和
10、物理上的一致,从而在备份前排除数据库中可能存在的错误。错误。2023年6月26日 109.2 备份前的准备备份前的准备 SQL Server 2005SQL Server 2005支持单独使用一种备份方式或组合支持单独使用一种备份方式或组合使用多种备份方式。使用多种备份方式。在执行备份之前要选择故障还原模型、创建备份设备在执行备份之前要选择故障还原模型、创建备份设备和指定备份权限。和指定备份权限。2023年6月26日 119.2.1 设置故障还原模型设置故障还原模型 1 1故障的还原模型故障的还原模型(1 1)简单恢复模型)简单恢复模型 简简单单恢恢复复模模型型适适用用于于小小的的数数据据库库
11、或或者者很很少少进进行行数数据据更更新新的的数数据据库库。当当发发生生故故障障时时,这这种种模模型型只只能能将将数数据据库库还还原原到到上上次次备备份份(完完全全备备份份或或差差异异备备份)的即时点,在上次备份之后发生的更改将全部丢失。份)的即时点,在上次备份之后发生的更改将全部丢失。(2 2)完全恢复模型)完全恢复模型 完完全全恢恢复复模模型型适适用用于于重重要要的的数数据据库库。使使用用这这种种模模型型,SQL SQL ServerServer会会在在日日志志中中记记录录对对数数据据库库的的所所有有类类型型的的更更改改,包包括括大大容容量量复复制制操操作作,它它是是一一个个完完整整的的日日
12、志志。只只要要日日志志本本身身没没有有损损坏坏,则则SQL SQL ServerServer可可以以把把故故障障或或误误操操作恢复到任意即时点。作恢复到任意即时点。(3 3)大容量日志记录恢复模型)大容量日志记录恢复模型 大容量日志记录恢复模型与完全恢复模型很相似,它为某些大规模或大容量日志记录恢复模型与完全恢复模型很相似,它为某些大规模或大容量复制操作提供最佳性能和最小的日志使用空间。大容量复制操作提供最佳性能和最小的日志使用空间。2023年6月26日 129.2.1 设置故障还原模型设置故障还原模型2 2设置还原模型设置还原模型 操作步骤如下:操作步骤如下:在在ssmsssms里里面面,展
13、展开开要要设设置置的的数数据据库库,在在数数据据库库上上单单击击右键,在快捷菜单上选择右键,在快捷菜单上选择“属性属性”选项。选项。在数据库属性对话框中选择在数据库属性对话框中选择“选项选项”选项卡,在选项卡,在“故障故障还原模型还原模型”下拉列表三个模型中选择一个。下拉列表三个模型中选择一个。2023年6月26日 13使用使用ALTER DATABASE命令可以修改数据库的恢复模命令可以修改数据库的恢复模式属性,该命令的语法如下。式属性,该命令的语法如下。ALTER DATABASE DatabaseName SET RECOVERY FULL|BULK_LOGGED|SIMPLE 例例 将
14、将BlueSkyDB数据库的恢复模式设置为简单恢复模式。数据库的恢复模式设置为简单恢复模式。USE masterGOALTER DATABASE BlueSkyDB SET RECOVERY SIMPLEGO 2023年6月26日 149.2.2 掌握备份设备管理掌握备份设备管理 1 1创建备份设备创建备份设备(1 1)使用系统存储过程创建)使用系统存储过程创建语法格式:语法格式:sp_addumpdevicesp_addumpdevice devtypedevtype=备份设备类型备份设备类型,logicalnamelogicalname=备份设备的逻辑名称备份设备的逻辑名称,physica
15、lnamephysicalname=备份设备的物理名称备份设备的物理名称 其中:其中:备份设备类型备份设备类型可以取下列三个值之一:可以取下列三个值之一:diskdisk:磁盘磁盘pipepipe:命名管道命名管道tapetape:磁带设备磁带设备 (2 2)使用)使用ssmsssms创建创建2023年6月26日 159.2.2 掌握备份设备管理掌握备份设备管理(3 3)创建备份设备实例)创建备份设备实例【例例】创建名为创建名为ex_ackupex_ackup的磁盘备份设备,其物理名称为的磁盘备份设备,其物理名称为d:servermssqlbackupd:servermssqlbackup f
16、ull_backup.bakfull_backup.bakUSE masterGOEXEC sp_addumpdevice disk,教学管理教学管理_FULL,d:servermssqlbackupfull_backup.bakGO2023年6月26日 16例例 在在C盘根目录创建一个文件夹盘根目录创建一个文件夹dump。创建一个名为。创建一个名为mydiskdump的磁盘备份设备,其物理名称为的磁盘备份设备,其物理名称为C:dumpdump1.bak。USE masterGOEXEC sp_addumpdevice disk,mydiskdump,c:dumpdump1.bakGO2023
17、年6月26日 17例例 创建一个名为创建一个名为tapedump1的磁带备份设备,其物理名的磁带备份设备,其物理名称为称为.tape0。USE masterGOEXEC sp_addumpdevice tape,tapedump1,.tape0GO2023年6月26日 18删除备份设备的命令是存储过程删除备份设备的命令是存储过程sp_dropdevice,该系统存储过程的使用方法如下。该系统存储过程的使用方法如下。sp_dropdevice logicalname=device ,delfile=delfile 例删除名为例删除名为tapedump1的磁带备份设备。的磁带备份设备。USE ma
18、sterGOEXEC sp_dropdevice tapedump1GO 删除备份设备删除备份设备2023年6月26日 199.2.3 确定备份权限确定备份权限 在在SQL SQL Server Server 20052005中中,具具有有下下列列角角色色的的成成员员具具有有作作备备份操作的权限:份操作的权限:固定的服务器角色固定的服务器角色sysadminsysadmin(系统管理员)系统管理员)固定的数据库角色固定的数据库角色db_ownerdb_owner(数据库所有者)数据库所有者)固固定定的的数数据据库库角角色色db_backupoperatordb_backupoperator(允
19、允许许进进行数据库备份的用户)行数据库备份的用户)还可以通过授权允许其他角色进行数据库备份。还可以通过授权允许其他角色进行数据库备份。2023年6月26日 209.3 数据库备份数据库备份9.3.1 BACKUP语句的语法格式语句的语法格式 1 1数据库备份的语句数据库备份的语句 2 2事务日志备份的语句事务日志备份的语句 3 3常用参数说明常用参数说明 9.3.2 数据库备份数据库备份 1 1执行完全数据库备份执行完全数据库备份 2 2执行差异备份执行差异备份 3 3执行日志备份执行日志备份 4 4执行文件执行文件/文件组备份文件组备份 2023年6月26日 21使用全库备份例子使用全库备份
20、例子Created Database and Performed Full Database BackupFull Database BackupFull Database Backup出错时间:Tuesday 上午11:50SundayMondayTuesday DataLogDataLogDataLog2023年6月26日 22使用全库使用全库+日志备份例子日志备份例子SundayMonday Full Database BackupFull Database BackupLogLogLogLogDataLogDataLog几个点:Monday 11:30,12:30,2023年6月26日
21、 23使用全库使用全库+差异差异+日志备份例子日志备份例子MondayTuesdayFull DatabaseBackupDifferentialBackupDifferentialBackup.LogDataLogLogLogLogLogLog LogData 2023年6月26日 249.3.1 BACKUP语句的语法格式语句的语法格式1数据库备份的语句数据库备份的语句BACKUP DATABASE 数据库名数据库名|数据库名变量数据库名变量,nTO,nWITH,DESCRIPTION,DIFFENRENTIAL,EXPIREDATE=date|date_var|RETAINDAYS=da
22、ys|days_var,PASSWORD=password|password_variable,INIT|NOINIT,FORMAT|NOFORMAT,NAME=backup_set_name|backup_set_name_var,NOSKIP|SKIP,RESTART,STATS=percentage2023年6月26日 259.3.1 BACKUP语句的句的语法格式法格式2事务日志备份的语句事务日志备份的语句BACKUP LOG 数据库名数据库名|数据库名变量数据库名变量TO,nWITH BLOCKSIZE=物理块字节长度物理块字节长度|物理块字节长度变量物理块字节长度变量,DESCRI
23、PTION,DIFFENRENTIAL,EXPIREDATE=date|date_var|RETAINDAYS=days|days_var,PASSWORD=password|password_variable,INIT|NOINIT,FORMAT|NOFORMAT,NAME=backup_set_name|backup_set_name_var,NO_TRUNCATE,NORECOVERY|STANDBY=undo_file_name,NOSKIP|SKIP,RESTART,STATS=percentage2023年6月26日 269.3.1 BACKUP语句的句的语法格式法格式3常用参数说
24、明:常用参数说明:(1 1)DESCRIPTIONDESCRIPTION:是备份描述文本是备份描述文本 。(2 2)DIFFENRENTIALDIFFENRENTIAL说明用增量备份方式备份数据库。说明用增量备份方式备份数据库。(3 3)EXPIREDATE=EXPIREDATE=date|datevardate|datevar 指定备份的有效期;指定备份的有效期;(4 4)PASSWORD=passwordPASSWORD=password为备份数据设置密码为备份数据设置密码 ;(5 5)INITINIT:表示重新写所有备份,但保留介质卷标。表示重新写所有备份,但保留介质卷标。NOINITN
25、OINIT表示备份表示备份将追加到指定的磁盘或磁带上,保留原有的备份集。将追加到指定的磁盘或磁带上,保留原有的备份集。(6 6)NORECOVERYNORECOVERY选项将数据备份到日志尾部,不覆盖原有数据。选项将数据备份到日志尾部,不覆盖原有数据。2023年6月26日 279.3.2 数据库备份数据库备份 1执行完全数据库备份执行完全数据库备份 当用户执行完全数据库备份时,当用户执行完全数据库备份时,SQL ServerSQL Server将备将备份数据库的所有数据文件和在备份过程中发生的任份数据库的所有数据文件和在备份过程中发生的任何活动保存在事务日志一起写入备份设备。系统出何活动保存在
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 09 数据 备份 恢复
限制150内