《《SQL数据库》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《SQL数据库》PPT课件.ppt(17页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、11.1 数据库的备份还原数据库的备份还原 11.2 数据库的导入导出数据库的导入导出 第第1111章章 数据库的备份还原与导入导出数据库的备份还原与导入导出 尽管在尽管在SQL Server 2005中采取了许多措施来保证数据库的中采取了许多措施来保证数据库的安全性和完整性,但故障仍不可避免。同时还存在其他一安全性和完整性,但故障仍不可避免。同时还存在其他一些可能造成数据丢失的因素,例如用户的操作失误、蓄意些可能造成数据丢失的因素,例如用户的操作失误、蓄意破坏、病毒攻击和自然界不可抗力等。因此,破坏、病毒攻击和自然界不可抗力等。因此,SQL Server 2005指定了一个良好的备份还原策略
2、,定期将数指定了一个良好的备份还原策略,定期将数据库进行备份以保护数据库,以便在事故发生后还原数据据库进行备份以保护数据库,以便在事故发生后还原数据库。库。这一节主要介绍备份还原的概念,以及这一节主要介绍备份还原的概念,以及SQL Server 2005数数据库如何进行备份还原。据库如何进行备份还原。11.1 数据库的备份还原数据库的备份还原 11.1.1 备份还原概述备份还原概述SQL Server 2005提供了高性能的备份和还原功能。提供了高性能的备份和还原功能。SQL Server 2005备份和还原组件提供了重要的保护手段,以备份和还原组件提供了重要的保护手段,以保护存储在保护存储在
3、SQL Server 2005数据库中的关键数据。实施数据库中的关键数据。实施计划妥善的备份和还原策略可保护数据库,避免由于各种计划妥善的备份和还原策略可保护数据库,避免由于各种故障造成的损坏而丢失数据。故障造成的损坏而丢失数据。“备份备份”是数据的副本,用于在系统发生故障后还原和恢复是数据的副本,用于在系统发生故障后还原和恢复数据。备份使用户能够在发生故障后还原数据。通过适当数据。备份使用户能够在发生故障后还原数据。通过适当的备份,可以从多种故障中恢复,包括:的备份,可以从多种故障中恢复,包括:1)系统故障。系统故障。2)用户错误(例如,误删除了某个表、某些数据)。用户错误(例如,误删除了某
4、个表、某些数据)。3)硬件故障(例如,磁盘驱动器损坏)。硬件故障(例如,磁盘驱动器损坏)。4)自然灾难。自然灾难。11.1 数据库的备份还原数据库的备份还原 还原是指从一个或多个备份中还原数据,并在还原最后一个还原是指从一个或多个备份中还原数据,并在还原最后一个备份后恢复数据库。数据库支持的还原方案取决于其恢复备份后恢复数据库。数据库支持的还原方案取决于其恢复模式。模式。创建备份的目的是为了可以恢复已损坏的数据库。但是,备创建备份的目的是为了可以恢复已损坏的数据库。但是,备份和还原数据需要在特定的环境中进行,并且必须使用一份和还原数据需要在特定的环境中进行,并且必须使用一定的资源。因此可靠的使
5、用备份和还原以实现恢复需要有定的资源。因此可靠的使用备份和还原以实现恢复需要有一个备份和还原策略。一个备份和还原策略。11.1 数据库的备份还原数据库的备份还原 11.1.2 恢复模式恢复模式备份和还原操作是在备份和还原操作是在“恢复模式恢复模式”下进行的。恢复模式是一下进行的。恢复模式是一个数据库属性,它用于控制数据库备份和还原操作基本行个数据库属性,它用于控制数据库备份和还原操作基本行为。例如,恢复模式控制了将事务记录在日志中的方式、为。例如,恢复模式控制了将事务记录在日志中的方式、事务日志是否需要备份以及可用的还原操作。事务日志是否需要备份以及可用的还原操作。1.恢复模式的优点恢复模式的
6、优点使用恢复模式具有下列优点:使用恢复模式具有下列优点:1)简化了恢复计划。简化了恢复计划。2)简化了备份和恢复过程。简化了备份和恢复过程。3)明确了系统操作要求之间的权衡。明确了系统操作要求之间的权衡。4)明确了可用性和恢复要求之间的权衡。明确了可用性和恢复要求之间的权衡。11.1 数据库的备份还原数据库的备份还原 2.恢复模式的分类恢复模式的分类在在SQL Server 2005数据库管理系统中,可以选择的三种恢数据库管理系统中,可以选择的三种恢复模式:简单模式、完整模式和大容量日志模式。复模式:简单模式、完整模式和大容量日志模式。(1)简单恢复模式简单恢复模式此模式简略地记录大多数事务,
7、所记录的信息只是为了确保此模式简略地记录大多数事务,所记录的信息只是为了确保在系统崩溃或还原数据备份之后数据库的一致性。在系统崩溃或还原数据备份之后数据库的一致性。(2)完整恢复模式完整恢复模式此模式完整地记录了所有的事务,并保留所有的事务日志记此模式完整地记录了所有的事务,并保留所有的事务日志记录,直到将它们备份。完整恢复模式能使数据库恢复到故录,直到将它们备份。完整恢复模式能使数据库恢复到故障时间点(假定在故障发生之后备份了日志尾部)。障时间点(假定在故障发生之后备份了日志尾部)。(3)大容量日志恢复模式大容量日志恢复模式此模式简略地记录大多数大容量操作(例如,索引创建和大此模式简略地记录
8、大多数大容量操作(例如,索引创建和大容量加载),完整地记录其他事务。大容量日志恢复提高容量加载),完整地记录其他事务。大容量日志恢复提高大容量操作的性能,常用作完整恢复模式的补充。大容量操作的性能,常用作完整恢复模式的补充。11.1 数据库的备份还原数据库的备份还原 3.恢复模式的选择恢复模式的选择(1)简单恢复模式简单恢复模式如果系统符合下列所有要求,则使用简单恢复模式:如果系统符合下列所有要求,则使用简单恢复模式:1)丢失日志中的一些数据无关紧要。丢失日志中的一些数据无关紧要。2)无论何时还原主文件组,用户都希望始终还原读写辅助文无论何时还原主文件组,用户都希望始终还原读写辅助文件组(如果
9、有)。件组(如果有)。3)是否备份事务日志无所谓,只需要完整差异备份。是否备份事务日志无所谓,只需要完整差异备份。4)不在乎无法恢复到故障点以及丢失从上次备份到发生故障不在乎无法恢复到故障点以及丢失从上次备份到发生故障时之间的任何更新。时之间的任何更新。(2)完整恢复模式完整恢复模式如果系统符合下列任何要求,则使用完整恢复模式:如果系统符合下列任何要求,则使用完整恢复模式:1)用户必须能够恢复所有数据。用户必须能够恢复所有数据。2)数据库包含多个文件组,并且希望逐段还原读写辅助文件数据库包含多个文件组,并且希望逐段还原读写辅助文件组(以及只读文件组)。组(以及只读文件组)。3)必须能够恢复到故
10、障点。必须能够恢复到故障点。11.1 数据库的备份还原数据库的备份还原 11.1.3 数据库备份数据库备份数据库备份包括完整备份和完整差异备份。数据库备份包括完整备份和完整差异备份。1.完整备份完整备份完整备份(以前称为数据库备份)将备份整个数据库,包括完整备份(以前称为数据库备份)将备份整个数据库,包括事务日志部分(以便可以恢复整个备份)。完整备份代表事务日志部分(以便可以恢复整个备份)。完整备份代表备份完成时的数据库。通过包括在完整备份中的事务日志,备份完成时的数据库。通过包括在完整备份中的事务日志,可以使用备份恢复到备份完成时的数据库。创建完整备份可以使用备份恢复到备份完成时的数据库。创
11、建完整备份是单一操作,通常会安排该操作定期发生。是单一操作,通常会安排该操作定期发生。11.1 数据库的备份还原数据库的备份还原 2.完整差异备份完整差异备份“完整差异备份完整差异备份”仅记录自上次完整备份后更改过的数据。仅记录自上次完整备份后更改过的数据。完整差异备份比完整备份更小、更快,可以简化频繁的备完整差异备份比完整备份更小、更快,可以简化频繁的备份操作,减少数据丢失的风险。份操作,减少数据丢失的风险。完整差异备份基于以前的完整差异备份基于以前的完整备份,因此,这样的完整备份称为完整备份,因此,这样的完整备份称为“基准备份基准备份”。差。差异备份仅记录自基准备份后更改过的数据。完整差异
12、备份异备份仅记录自基准备份后更改过的数据。完整差异备份比完整备份更小、更快,可以简化频繁的备份操作,减少比完整备份更小、更快,可以简化频繁的备份操作,减少数据丢失的风险。数据丢失的风险。11.1 数据库的备份还原数据库的备份还原 3.使用使用Backup命令进行备份命令进行备份T-SQL提供了提供了BACKUP DATABASE语句对数据库进行备份。语句对数据库进行备份。其语法格式为:其语法格式为:BACKUP DATABASE database_name|database_name_var TO ,.n MIRROR TO ,.n .next-mirror WITH BLOCKSIZE=bl
13、ocksize|blocksize_variable ,CHECKSUM|NO_CHECKSUM 11.1 数据库的备份还原数据库的备份还原【例例11-1】将整个将整个“学生成绩管理系统学生成绩管理系统”数据库完整备份到数据库完整备份到磁盘上,并创建一个新的媒体集。磁盘上,并创建一个新的媒体集。BACKUP DATABASE学生成绩管理系统学生成绩管理系统TO DISK=C:MSSQLBACKUP学生成绩管理系统学生成绩管理系统.Bak WITH FORMAT,NAME=学生成绩管理系统的完整备份学生成绩管理系统的完整备份【例例11-2】创建创建“学生成绩管理系统学生成绩管理系统”数据库的完整
14、差异备数据库的完整差异备份。份。BACKUP DATABASE学生成绩管理系统学生成绩管理系统TO DISK=C:MSSQLBACKUP学生成绩管理系统差异学生成绩管理系统差异备份备份.Bak WITH DIFFERENTIAL11.1 数据库的备份还原数据库的备份还原 11.1.4 数据库还原数据库还原还原方案从一个或多个备份中还原数据,并在还原最后一个还原方案从一个或多个备份中还原数据,并在还原最后一个备份后恢复数据库。支持的还原方案取决于恢复模式。通备份后恢复数据库。支持的还原方案取决于恢复模式。通过还原方案,可以在下列级别之一还原数据:数据库和数过还原方案,可以在下列级别之一还原数据:
15、数据库和数据文件。据文件。11.1 数据库的备份还原数据库的备份还原 3.使用使用Restore命令进行还原命令进行还原T-SQL提供了提供了RESTORE命令对备份数据库进行恢复。其语命令对备份数据库进行恢复。其语法格式为:法格式为:RESTORE DATABASE database_name|database_name_var FROM ,.n WITH CHECKSUM|NO_CHECKSUM ,CONTINUE_AFTER_ERROR|STOP_ON_ERROR ,FILE=file_number|file_number ,KEEP_REPLICATION ,MEDIANAME=med
16、ia_name|media_name_variable 11.1 数据库的备份还原数据库的备份还原【例例11-3】将将“学生成绩管理系统学生成绩管理系统”数据库的完整备份进行数据库的完整备份进行还原。还原。RESTORE DATABASE学生成绩管理系统学生成绩管理系统FROM DISK=C:MSSQLBACKUP学生成绩管理系统学生成绩管理系统.Bak【例例11-4】将将“学生成绩管理系统学生成绩管理系统”数据库的完整差异备份数据库的完整差异备份还原。还原。BACKUP DATABASE学生成绩管理系统学生成绩管理系统FROM DISK=C:MSSQLBACKUP学生成绩管理系统学生成绩管理
17、系统差异备份差异备份.BakRECOVERY 11.1 数据库的备份还原数据库的备份还原 通过导入和导出操作可以在通过导入和导出操作可以在SQL Server 2005和其他异类数和其他异类数据源(例如据源(例如Excel或或Oracle数据库)之间轻松移动数据。数据库)之间轻松移动数据。例如,可以将数据从例如,可以将数据从Excel应用程序导出到数据文件,然应用程序导出到数据文件,然后将数据大容量导入到后将数据大容量导入到SQL Server表。表。“导出导出”是指将是指将数据从数据从SQL Server表复制到数据文件。表复制到数据文件。“导入导入”是指将是指将数据从数据文件加载到数据从数
18、据文件加载到SQL Server表。表。这一节主要介绍这一节主要介绍SQL Server 2005如何进行数据的导入和导如何进行数据的导入和导出。出。11.2 数据库的导入导出数据库的导入导出11.2.1 数据库表数据导出数据库表数据导出在在SQL Server 2005中,可以在中,可以在SQL Server Management Studio中将数据库表数据导出。中将数据库表数据导出。1)打开打开SQL Server Management Studio,用鼠标右键单,用鼠标右键单击击“对象资源管理器对象资源管理器”中的中的“学生成绩管理系统学生成绩管理系统”数据库数据库对象。在弹出的快捷菜
19、单中选择对象。在弹出的快捷菜单中选择“任务任务”下的下的“导出数据导出数据”选项选项。11.2 数据库的导入导出数据库的导入导出11.2.2 数据库表数据导入数据库表数据导入在在SQL Server 2005中,也可以在中,也可以在SQL Server Management Studio中将数据导如入到数据库表中。中将数据导如入到数据库表中。为了演示数据的导入操作,在本例中,将导出操作中导出的为了演示数据的导入操作,在本例中,将导出操作中导出的数据库表数据导入到数据库表数据导入到“仓库库存管理系统仓库库存管理系统”数据库中。数据库中。1)打开打开SQL Server Management Studio,用鼠标右键单,用鼠标右键单击击“对象资源管理器对象资源管理器”中的中的“仓库库存管理系统仓库库存管理系统”数据库数据库对象。在弹出的快捷菜单中选择对象。在弹出的快捷菜单中选择“任务任务”下的下的“导入数据导入数据”选项。选项。11.2 数据库的导入导出数据库的导入导出
限制150内