1、oracle数据库备份恢复 补充:数据库备份和恢复补充:数据库备份和恢复 1.数据库备份概述数据库备份概述 对数据库备份的重要性对数据库备份的重要性 Oracle中备份的分类中备份的分类2.逻辑备份逻辑备份 如何使用如何使用EXP进行逻辑备份进行逻辑备份3.逻辑恢复逻辑恢复 如何用如何用IMP进行逻辑恢复进行逻辑恢复 补充:数据库备份和恢复补充:数据库备份和恢复 4.物理备份物理备份 冷备份冷备份/热备份的方法热备份的方法5.物理恢复物理恢复冷备份冷备份/热备份的恢复方法热备份的恢复方法6.数据泵数据泵 补充补充 数据库备份和恢复数据库备份和恢复备份就是数据库信息的一个拷贝。备份就是数据库信息
2、的一个拷贝。对于对于Oracle而言,这些信息包括控制文件、而言,这些信息包括控制文件、数据文件以及重做日志文件等。数据文件以及重做日志文件等。数据库备份的目的是为了防止意外事件发生数据库备份的目的是为了防止意外事件发生而造成数据库的破坏后恢复数据库中的数据而造成数据库的破坏后恢复数据库中的数据信息。信息。一、概述一、概述备份和恢复是两个互相联系的概念,备份就备份和恢复是两个互相联系的概念,备份就是将数据信息保存起来;而恢复则是当意外是将数据信息保存起来;而恢复则是当意外事件发生或者某种需要时,将已备份的数据事件发生或者某种需要时,将已备份的数据信息还原到数据库系统中去。信息还原到数据库系统中
3、去。1.备份原则备份原则(1)日志文件归档到磁盘,以后再拷贝到磁带上。归档日志文件归档到磁盘,以后再拷贝到磁带上。归档日志文件目的地最好不要与数据库文件或联机重做日志文件目的地最好不要与数据库文件或联机重做日志文件存储在同一个物理磁盘设备上。如果数据日志文件存储在同一个物理磁盘设备上。如果数据库文件和当前激活重做日志文件丢失,可使用联机库文件和当前激活重做日志文件丢失,可使用联机备份或脱机备份,然后可以继续安全操作。备份或脱机备份,然后可以继续安全操作。(2)当使用当使用CREATE DATABASE命令创建数据库时,命令创建数据库时,MAXLOGFILES参数值大于参数值大于2,将简化丢失未
4、激活,将简化丢失未激活但联机的重做日志文件的恢复操作。但联机的重做日志文件的恢复操作。1.备份原则备份原则(2)如果数据库文件备份到磁盘上,应使用如果数据库文件备份到磁盘上,应使用单独磁盘或磁盘组保存数据文件的备份拷贝。单独磁盘或磁盘组保存数据文件的备份拷贝。备份到磁盘上通常可以在较短时间内恢复。备份到磁盘上通常可以在较短时间内恢复。(3)应保持控制文件的多个拷贝,控制文件应保持控制文件的多个拷贝,控制文件的拷贝应置于不同磁盘控制器下的不同磁盘的拷贝应置于不同磁盘控制器下的不同磁盘设备上。增加控制文件可以先关闭数据库,设备上。增加控制文件可以先关闭数据库,拷贝控制文件,改变服务器参数文件的参数
5、拷贝控制文件,改变服务器参数文件的参数CONTROL_FILES,再重新启动数据库即可。,再重新启动数据库即可。1.备份原则备份原则(4)联机日志文件应为多个,每个组至少应保持两联机日志文件应为多个,每个组至少应保持两个成员。日志组的两个成员不应保存在同一个物理个成员。日志组的两个成员不应保存在同一个物理设备上,因为这将削弱多重日志文件的作用。设备上,因为这将削弱多重日志文件的作用。(5)保持归档重做日志文件的多个拷贝,在磁盘和保持归档重做日志文件的多个拷贝,在磁盘和磁带上都保留备份拷贝。使用服务器参数文件中的磁带上都保留备份拷贝。使用服务器参数文件中的LOG_ARCHIVE_DUPLEX_D
6、EST和和LOG_ARCHIVE_MIN_SUCCEED_DEST参数,参数,Oracle会自动双向归档日志文件。会自动双向归档日志文件。1.备份原则备份原则(6)通过在磁盘上保存最小备份和数据库文件向前回通过在磁盘上保存最小备份和数据库文件向前回滚所需的所有归档重做日志文件,在许多情况下可滚所需的所有归档重做日志文件,在许多情况下可以使得从备份中向前回滚数据库或数据库文件的过以使得从备份中向前回滚数据库或数据库文件的过程简化和加速。程简化和加速。(7)增加、重命名、删除日志文件和数据文件改变数增加、重命名、删除日志文件和数据文件改变数据库结构,控制文件都应备份,因为控制文件存放据库结构,控制
7、文件都应备份,因为控制文件存放数据库的模式结构。此外,增加数据文件后也要备数据库的模式结构。此外,增加数据文件后也要备份。份。(8)若企业有多个若企业有多个Oracle数据库,则应使用具有恢复数据库,则应使用具有恢复目录的目录的Oracle恢复管理器。这将使用户备份和恢恢复管理器。这将使用户备份和恢复过程中的错误引起的风险达到最小。复过程中的错误引起的风险达到最小。2.数据库备份应用数据库备份应用下面讨论如何将集成的数据库备份用于实例失败和下面讨论如何将集成的数据库备份用于实例失败和磁盘失败。磁盘失败。(1)实例失败实例失败从实例失败中恢复应自动进行。数据库需要访问位从实例失败中恢复应自动进行
8、。数据库需要访问位于正确位置的所有控制文件、联机重做日志文件和于正确位置的所有控制文件、联机重做日志文件和数据文件。数据库中任何未提交的事务都要回滚。数据文件。数据库中任何未提交的事务都要回滚。一个实例失败一个实例失败(例如由服务器失败引起的例如由服务器失败引起的)之后,当之后,当数据库要重启动时,必须检查数据库报警日志中的数据库要重启动时,必须检查数据库报警日志中的错误信息。错误信息。2.数据库备份应用数据库备份应用(2)磁盘失败磁盘失败磁盘失败也叫介质失败磁盘失败也叫介质失败(media failure),通常由磁,通常由磁盘损坏或磁盘上读错误引起,这样一个磁盘上驻留盘损坏或磁盘上读错误引
9、起,这样一个磁盘上驻留的当前数据库文件变得无法被数据库读出。的当前数据库文件变得无法被数据库读出。驻留联机重做日志文件的磁盘应被镜像,失败时它驻留联机重做日志文件的磁盘应被镜像,失败时它们不会丢失。镜像可通过使用重做日志文件或在操们不会丢失。镜像可通过使用重做日志文件或在操作系统级镜像文件。如果丢失的是数据文件,可从作系统级镜像文件。如果丢失的是数据文件,可从前一天晚上的热备份中恢复,步骤如下:前一天晚上的热备份中恢复,步骤如下:2.数据库备份应用数据库备份应用(1)从备份中把丢失的文件恢复到其原来位置从备份中把丢失的文件恢复到其原来位置cp/db10/oracle/CC1/data01.db
10、f/db03/oracle/CC1/data01.dbf2.数据库备份应用数据库备份应用(2)安装数据库安装数据库 ORACLE_SID=CC1;export ORACLE_SID ORAENV_ASK=NO;export ORAENV_AS connect system/manager as sysdba startup mount cc1;2.数据库备份应用数据库备份应用(3)恢复数据库恢复数据库要求给出恢复所需的各归档日志文件名。要求给出恢复所需的各归档日志文件名。recover database;(4)打开数据库打开数据库alter database open;3.数据库备份类型数据库
11、备份类型备份一个备份一个Oracle数据库有三种标准方式:数据库有三种标准方式:导出导出(Export)脱机备份脱机备份(offline backup)联机联机(ARCHIVELOG)备份备份(online backup)。导出方式是数据库的逻辑备份。脱机备份和联机备导出方式是数据库的逻辑备份。脱机备份和联机备份都是物理备份份都是物理备份(也称低级备份也称低级备份)。3.数据库备份类型数据库备份类型(1)逻辑备份逻辑备份导出是将数据库中数据备份到一个称为导出是将数据库中数据备份到一个称为“导出转储文导出转储文件件”的二进制系统文件中。导出有的二进制系统文件中。导出有3种模式:种模式:用户用户(
12、User)模式:导出用户所有对象以及对象中模式:导出用户所有对象以及对象中的数据。的数据。表表(Table)模式:导出用户的所有表或者用户指定模式:导出用户的所有表或者用户指定的表。的表。3.数据库备份类型数据库备份类型全局全局(Full)模式模式(也称为数据库模式也称为数据库模式):导:导出数据库中所有对象,包括所有数据、数出数据库中所有对象,包括所有数据、数据定义和用来重建数据库的存储对象。据定义和用来重建数据库的存储对象。导出备份可以导出整个数据库、指定用户导出备份可以导出整个数据库、指定用户或指定表。在导出期间,可以选择是否导或指定表。在导出期间,可以选择是否导出与表相关的数据字典的信
13、息,如权限、出与表相关的数据字典的信息,如权限、索引和与其相关的约束条件。索引和与其相关的约束条件。3.数据库备份类型数据库备份类型导出备份有导出备份有3种类型:种类型:完全型完全型(Complete Export):对所有表执行全数:对所有表执行全数据库导出或仅对上次导出后修改过的表执行全数据据库导出或仅对上次导出后修改过的表执行全数据库导出。库导出。积累型积累型(Cumulative):备份上一次积累型备份所:备份上一次积累型备份所改变的数据。改变的数据。增量型增量型(Incremental):备份上一次备份后改变的:备份上一次备份后改变的数据。数据。3.数据库备份类型数据库备份类型(2)
14、物理备份物理备份物理备份是拷贝数据库文件而不是其逻辑内容。物理备份是拷贝数据库文件而不是其逻辑内容。Oracle支持两种不同类型的物理备份:脱机备支持两种不同类型的物理备份:脱机备份份(也称冷备份也称冷备份)和联机备份和联机备份(也称热备份也称热备份)。脱机备份脱机备份脱机备份在数据库已经正常关闭的情况进行。脱机备份在数据库已经正常关闭的情况进行。3.数据库备份类型数据库备份类型联机备份联机备份数据库可能要求数据库可能要求24小时运行,而且随时会对数小时运行,而且随时会对数据进行操作。据进行操作。联机备份过程具备强有力功能的原因有两个。联机备份过程具备强有力功能的原因有两个。第一,提供了完全的
15、时间点第一,提供了完全的时间点(point-in-time)恢恢复。第二,在文件系统备份时允许数据库保持复。第二,在文件系统备份时允许数据库保持打开状态。打开状态。二、导入二、导入/导出导出导出是数据库的逻辑备份,导入是数据库导出是数据库的逻辑备份,导入是数据库的逻辑恢复。的逻辑恢复。1.导出导出数据库的逻辑备份包括读一个数据库记录数据库的逻辑备份包括读一个数据库记录集和将记录集写入一个文件中。这些记录集和将记录集写入一个文件中。这些记录的读取与其物理位置无关。的读取与其物理位置无关。二、导入二、导入/导出导出在在Oracle中,中,Export实用程序就是用来完实用程序就是用来完成这样的数据
16、库备份的。若要恢复使用由成这样的数据库备份的。若要恢复使用由一个导出生成的文件,可使一个导出生成的文件,可使Import实用程实用程序。序。表表9.1列出了列出了Export指定的运行期选指定的运行期选项。可以在命令提示符窗口输入项。可以在命令提示符窗口输入EXP HELP=Y调用调用EXP命令的帮助信息。命令的帮助信息。二、导入二、导入/导出导出导出有三种模式:导出有三种模式:(1)交互模式。在输入交互模式。在输入Exp命令后,根据系统的命令后,根据系统的提示输入导出参数,如:用户名、口令和导出类提示输入导出参数,如:用户名、口令和导出类型等参数。型等参数。(2)命令行模式。命令行模式和交互
17、模式类似,命令行模式。命令行模式和交互模式类似,不同的是使用命令模式时,只能在模式被激活后,不同的是使用命令模式时,只能在模式被激活后,才能把参数和参数值传递给导出程序。才能把参数和参数值传递给导出程序。(3)参数文件模式。参数文件模式的关键参数是参数文件模式。参数文件模式的关键参数是Parfile。Parfile的对象是一个包含激活控制导出的对象是一个包含激活控制导出对话的参数和参数值的文件名。对话的参数和参数值的文件名。表表9.1 Export选项选项表表9.1 Export选项选项1.导出导出【例【例1】以交互模式进行数据库】以交互模式进行数据库XSCJ的表的表XS的导出。的导出。C:e
18、xp/*在命令提示符下输入在命令提示符下输入EXP,然后回车,然后回车*/Export:Release 10.2.0.1.0 Production on 星期四星期四 6月月9 15:19:19 2019 Copyright 1992,2019,Oracle.All rights reserved.用户名:用户名:admin/*输入用户名和口令输入用户名和口令*/口令:口令:1.导出导出连接到:连接到:Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 ProductionWith the Partitioning,OLAP an
19、d Data Mining options输入数组提取缓冲区大小:输入数组提取缓冲区大小:4096 /*这里使用默认值,直接回车即可这里使用默认值,直接回车即可*/导出文件:导出文件:EXPDAT.DMPXS.DMP /*输入导出文件名称输入导出文件名称*/1.导出导出(1)E(完整的数据库完整的数据库),(2)U(用户用户)或或(3)T(表表):(2)U T /*在这里选择要导出的类型,我们选择表在这里选择要导出的类型,我们选择表*/导出表数据导出表数据(yes/no):yes/*使用默认设置,导出表数据使用默认设置,导出表数据*/压缩区压缩区(yes/no):yes /*使用默认设置,压缩
20、区使用默认设置,压缩区*/已导出已导出ZHS16GBK字符集和字符集和AL16UTF16 NCHAR字符集字符集1.导出导出即将导出指定的表通过常规路径即将导出指定的表通过常规路径要导出的表(要导出的表(T)或分区()或分区(T:P):():(RETURN退退出)出)XS/*在此输入要导出的表名称在此输入要导出的表名称*/正在导出表正在导出表XS22行被导出行被导出要导出的表(要导出的表(T)或分区()或分区(T:P):():(RETURN以以退出)退出)/*导出表导出表XS完毕,直完毕,直 接回车即可完成导出工作。接回车即可完成导出工作。若要导出其他表,在此输入表名即可若要导出其他表,在此输
21、入表名即可*/在没有警告的情况下成功终止导出。在没有警告的情况下成功终止导出。2.导入导入 导出数据可以通过导出数据可以通过Oracle的的Import实用程序导实用程序导入。可以导入全部或部分数据。如果导入一个全导入。可以导入全部或部分数据。如果导入一个全导出的导出转储文件,则包括表空间、数据文件和用出的导出转储文件,则包括表空间、数据文件和用户在内的所有数据库对象都会在导入时创建。不过,户在内的所有数据库对象都会在导入时创建。不过,为了在数据库中指定对象的物理分配,通常需要预为了在数据库中指定对象的物理分配,通常需要预先创建表空间和用户。如果只从导出转储文件中导先创建表空间和用户。如果只从
22、导出转储文件中导入部分数据,那么表空间、数据文件和用户必须在入部分数据,那么表空间、数据文件和用户必须在导入前设置好。导入前设置好。2.导入导入 当数据库出现错误的修改或删除操作时,利当数据库出现错误的修改或删除操作时,利用导入操作通过导出文件恢复重要的数据。用导入操作通过导出文件恢复重要的数据。在使用应用程序前对其操作的表导出到一个在使用应用程序前对其操作的表导出到一个概要中,这样,如果由于应用程序中的错误概要中,这样,如果由于应用程序中的错误而删除或修改了表中数据时,可以从已经导而删除或修改了表中数据时,可以从已经导出到概要的备份表中恢复误操作的数据。出到概要的备份表中恢复误操作的数据。2
23、.导入导入导入操作可把一个操作系统中的导入操作可把一个操作系统中的Oracle数数据库导出后再导入到另一个操作系统中。据库导出后再导入到另一个操作系统中。导入操作可以交互进行也可通过命令进行。导入操作可以交互进行也可通过命令进行。导入操作选项同导出的基本一样,表导入操作选项同导出的基本一样,表9.2给给出导入操作的参数,其他参数请参照导出出导入操作的参数,其他参数请参照导出参数。参数。表表9.2 Import关键字关键字表表9.2 Import关键字关键字2.导入导入【例【例2】以交互模式进行】以交互模式进行XSCJ数据库中数据库中XS表的导入。表的导入。C:imp /*在命令提示符下输入在命
24、令提示符下输入IMP,然后回车,然后回车*/Import:Release 10.2.0.1.0 Production on 星星期四期四 6月月9 15:3 9:19 2019 Copyright 1992,2019 Oracle.All rights reserved.用户名:用户名:admin/*输入用户名和口令输入用户名和口令*/口令:口令:2.导入导入连接到:连接到:Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 ProductionWith the Partitioning,OLAP and Data Mining
25、options 导入文件:导入文件:EXPDAT.DMPXS.DMP /*输入要导入的导出转储文件名输入要导入的导出转储文件名*/输入插入缓冲区大小(最小为输入插入缓冲区大小(最小为919230720/*使用默认设置,然后回车使用默认设置,然后回车*/2.导入导入经由常规路径导出由经由常规路径导出由EXPORT:V10.02.00创建创建的文件已经完成的文件已经完成ZHS16GBK字符集和字符集和AL16UTF16 NCHAR字符集中的导入只列出导字符集中的导入只列出导入文件的内容(入文件的内容(yes/no):):no由于对象已存在,忽略创建错误(由于对象已存在,忽略创建错误(yes/no
26、no导入权限(导入权限(yes/no):):yes导入整个导出文件(导入整个导出文件(yes/no):):no用户名:用户名:admin2.导入导入/*输入用户名,导入的数据将会在此用户模式下创建输入用户名,导入的数据将会在此用户模式下创建*/输入表(输入表(T)或分区()或分区(T:P)名称。空列表表示用户)名称。空列表表示用户的所有表的所有表输入表(输入表(T)或分区()或分区(T:P)名称或。如果完成:)名称或。如果完成:XS/*输入要创建的表的名称输入要创建的表的名称*/输入表(输入表(T)或分区()或分区(T:P)名称或。)名称或。2.导入导入如果完成:如果完成:正在将正在将ADMI
27、N的对象导入到的对象导入到ADMIN正在导入表正在导入表“XS”22行被导入行被导入准备启用约束条件准备启用约束条件成功终止导入,但出现警告。成功终止导入,但出现警告。2.导入导入(2)参数模式参数模式参数模式其实就是将命令行中命令后面所带参数模式其实就是将命令行中命令后面所带的参数写在一个参数文件中,然后再使用命的参数写在一个参数文件中,然后再使用命令,使后面带一个调用该文件的参数。可以令,使后面带一个调用该文件的参数。可以通过普通的文本文件编辑器来创建这个文件。通过普通的文本文件编辑器来创建这个文件。为了便于标识,将该参数文件命名为为了便于标识,将该参数文件命名为.parfile的后缀。以
28、下是一个参数文件的内容:的后缀。以下是一个参数文件的内容:2.导入导入以下是一个参数文件的内容:以下是一个参数文件的内容:USERID=ADMIN/MANAGERFULL=NBUFFER=10000FILE=XS.DMPTABLES=XS使用参数模式执行过程如下:使用参数模式执行过程如下:D:EXP PARFILE=XS.PARFILE三、脱机备份三、脱机备份脱机备份又称冷备份。脱机备份又称冷备份。冷备份是数据库文件的物理备份,需要在数据冷备份是数据库文件的物理备份,需要在数据库关闭状态下进行。库关闭状态下进行。通常在数据库通过一个通常在数据库通过一个shutdown normal或或shut
29、down immediate命令正常关闭后进行。命令正常关闭后进行。在磁盘空间容许的情况下,首先将这些文件复在磁盘空间容许的情况下,首先将这些文件复制到磁盘上,然后在空闲时候将其备份到磁带制到磁盘上,然后在空闲时候将其备份到磁带上。上。三、脱机备份三、脱机备份当数据库关闭时,其使用的各个文件都可以进行当数据库关闭时,其使用的各个文件都可以进行备份。这些文件构成一个数据库关闭时的一个完整备份。这些文件构成一个数据库关闭时的一个完整映像。映像。冷备份要备份文件包括所有数据文件、所有控制冷备份要备份文件包括所有数据文件、所有控制文件、所有联机重做日志、文件、所有联机重做日志、init.ora文件和文
30、件和SPFILE文件文件(可选可选)。在磁盘空间容许的情况下,首先将这些文件复制在磁盘空间容许的情况下,首先将这些文件复制到磁盘上,然后在空闲时候将其备份到磁带上。到磁盘上,然后在空闲时候将其备份到磁带上。冷备份一般在冷备份一般在SQL*Plus中进行。中进行。三、脱机备份三、脱机备份【例【例3】把】把XSCJ数据库的所有数据文件、重做数据库的所有数据文件、重做日志文件和控制文件都备份。日志文件和控制文件都备份。(1)正常关闭要备份的实例正常关闭要备份的实例C:sqlplus/nologSQLconnect system/manager as sysdbaSQLshutdown normal三
31、、脱机备份三、脱机备份(2)备份数据库备份数据库 使用操作系统的备份工具,备份所有的数据使用操作系统的备份工具,备份所有的数据文件、重做日志文件、控制文件和参数文件。文件、重做日志文件、控制文件和参数文件。(3)启动数据库启动数据库SQLstartup mount四、联机备份四、联机备份联机备份又可称为热备份或联机备份又可称为热备份或ARCHIVELOG备份。备份。联机备份要求数据库运行在联机备份要求数据库运行在ARCHIVELOG方式下。方式下。Oracle是以循环方式写联机重做日志文件,是以循环方式写联机重做日志文件,写满第一个日志后,开始写第二个,依次类写满第一个日志后,开始写第二个,依
32、次类推。当最后一个联机重做日志文件写满后,推。当最后一个联机重做日志文件写满后,LGWR(Log Writer)后台进程开始重新向第后台进程开始重新向第一个文件写入内容。一个文件写入内容。四、联机备份四、联机备份当最后一个联机重做日志文件写满后,当最后一个联机重做日志文件写满后,LGWR(Log Writer)后台进程开始重新向后台进程开始重新向第一个文件写入内容。第一个文件写入内容。当当Oracle运行在运行在ARCHIVELOG方式时,方式时,ARCH后台进程重写重做日志文件前将每个后台进程重写重做日志文件前将每个重做日志文件做一份拷贝。重做日志文件做一份拷贝。1.以以ARCHIVELOG
33、方式运行数据库方式运行数据库进行联机备份可以使用进行联机备份可以使用PL/SQL语句也可以语句也可以使用备份向导。使用备份向导。都要求数据库运行在都要求数据库运行在ARCHIVELOG方式下。方式下。下面说明如何进入下面说明如何进入ARCHIVELOG方式。方式。1.以以ARCHIVELOG方式运行数据库方式运行数据库(1)进入命令提示符操作界面进入命令提示符操作界面 C:sqlplus/nolog(2)以以SYSDBA身份和数据库相连身份和数据库相连SQLconnect system/manager as sysdba1.以以ARCHIVELOG方式运行数据库方式运行数据库(3)使数据库运行
34、在使数据库运行在ARCHIVELOG方式下方式下SQLshutdown immediateSQLalter database archivelog;SQLarchive log start;SQLalter database open;1.以以ARCHIVELOG方式运行数据库方式运行数据库下面的命令将从下面的命令将从Server Manager中显示中显示当前数据库的当前数据库的ARCHIVELOG状态。状态。SQLarchive log list2.执行数据库备份执行数据库备份1.使用命令方式进行备份使用命令方式进行备份(1)逐个表空间备份数据文件逐个表空间备份数据文件设置表空间为备份状态
35、设置表空间为备份状态备份表空间的数据文件备份表空间的数据文件将表空间恢复到正常状态。将表空间恢复到正常状态。(2)备份归档重做日志文件备份归档重做日志文件记录归档重做日志目标目录中的文件记录归档重做日志目标目录中的文件备份归档重备份归档重做日志文件做日志文件有选择地删除或压缩它们有选择地删除或压缩它们通过通过alter database backup controlfile命令备份控制文件。命令备份控制文件。2.执行数据库备份执行数据库备份2.使用备份向导进行备份使用备份向导进行备份备份向导可以用来备份数据库、数据文件、备份向导可以用来备份数据库、数据文件、表空间和重做日志文件等各种对象。表空
36、间和重做日志文件等各种对象。备份向导也可以制作数据文件和重做日志文备份向导也可以制作数据文件和重做日志文件的映像副本。件的映像副本。2.执行数据库备份执行数据库备份【例【例4】对】对XSCJ数据库进行备份。数据库进行备份。(1)在如图在如图9.1所示的界面中,所示的界面中,选择单击选择单击“调度备份调度备份”进入进入“调度备份调度备份”界面,界面,如图如图9.2所示。所示。图图9.1 Oracle企业管理器企业管理器 图图9.2调度备份调度备份(2)单击单击“调度定制备份调度定制备份”,进入,进入“选项选项”界面,如图界面,如图9.3所示。所示。图图9.3选项界面选项界面(3)单击单击“下一步
37、下一步”,进入,进入“设置设置”界面,如图界面,如图9.4所示。指所示。指定要将数据库备份到的介质类型。定要将数据库备份到的介质类型。图图9.4设置界面设置界面(4)单击单击“下一步下一步”,进入,进入“调度调度”界面,如界面,如图图9.5所示。在该界面可以设置调度备份开始所示。在该界面可以设置调度备份开始的日期和时间。可以选择立即开始备份作业,的日期和时间。可以选择立即开始备份作业,也可以选择以后再执行,还可以使用重复和也可以选择以后再执行,还可以使用重复和一直重复到部分来设置重复执行备份的各种一直重复到部分来设置重复执行备份的各种参数。参数。图图9.5调度界面调度界面(5)单击单击“下一步
38、下一步”,进入,进入“复查复查”界面,界面,如图如图9.6所示。在此可以复查调度备份向导所示。在此可以复查调度备份向导的前些步骤中所作的选择。的前些步骤中所作的选择。(6)单击单击“提交作业提交作业”按钮,进入按钮,进入“状态状态”界面,至此备份操作完成。界面,至此备份操作完成。图图9.6复查界面复查界面 五、五、恢复恢复最简单的恢复是使用最新的导出转储文件,最简单的恢复是使用最新的导出转储文件,使用使用Import命令,有选择地导入所需要的命令,有选择地导入所需要的对象和用户。对象和用户。利用恢复向导进行恢复前,也需要和利用恢复向导进行恢复前,也需要和Oracle Management相连。
39、若数据库处于打开状相连。若数据库处于打开状态,则只能恢复表空间或数据库文件。态,则只能恢复表空间或数据库文件。要恢复整个数据库,数据库必须处于装载状要恢复整个数据库,数据库必须处于装载状态。态。五、五、恢复恢复下面介绍数据库运行在下面介绍数据库运行在ARCHIVELOG下使用恢复下使用恢复向导进行恢复的步骤:向导进行恢复的步骤:(1)如图如图9.7所示,数据库处于装载状态,单击所示,数据库处于装载状态,单击“执执行恢复行恢复”,进入,进入“执行恢复执行恢复”界面,如图界面,如图9.9所所示。可以选择是对整个数据库或是某个对象进示。可以选择是对整个数据库或是某个对象进行恢复。选择行恢复。选择“整
40、个数据库恢复整个数据库恢复”类别的类别的“恢恢复到当前时间或过去的某个时间点复到当前时间或过去的某个时间点”。在。在“主主机身份证明机身份证明”类别的用户名和口令文本框输入类别的用户名和口令文本框输入操作系统的用户和对应的口令操作系统的用户和对应的口令五、恢复五、恢复(2)单单击击“执行整个数据库恢复执行整个数据库恢复”,进入,进入“时间点时间点”界面,如图界面,如图9.9所示。在此设置讲整个数据库恢所示。在此设置讲整个数据库恢复到当前时间还是以前某个时间点。复到当前时间还是以前某个时间点。(3)选中选中“恢复到当前时间恢复到当前时间”单选按钮,单击单选按钮,单击“下下一步一步”,进入,进入“
41、重命名重命名”界面,如图界面,如图9.10所示。所示。设置是否将文件还原至其他位置。如果选择设置是否将文件还原至其他位置。如果选择“是。将文件复原到新的公用位置。是。将文件复原到新的公用位置。”选项,选项,那么将控制文件更新为使用新位置。那么将控制文件更新为使用新位置。五、恢复五、恢复(4)单击单击“下一步下一步”,进入,进入“复查复查”界面,界面,如图如图9.11所示。所示。(5)单击单击“提交提交”,完成恢复操作,剩下的,完成恢复操作,剩下的工作由工作由Oracle系统完成。恢复完成后,出系统完成。恢复完成后,出现如图现如图9.12所示界面。所示界面。图图9.7关闭数据库使数据库处于装载状
42、态关闭数据库使数据库处于装载状态 图图9.8执行恢复界面执行恢复界面 图图9.9时间点界面时间点界面 图图9.10重命名界面重命名界面 图图9.11复查界面复查界面 图图9.12恢复成功恢复成功六、数据泵六、数据泵数据泵(数据泵(Data Pump)是)是Oracle 10g新增新增的实用程序,它可以从数据库中高速导出或的实用程序,它可以从数据库中高速导出或加载数据库的方法,可以自动管理多个并行加载数据库的方法,可以自动管理多个并行的数据流。数据泵可以实现在测试环境。开的数据流。数据泵可以实现在测试环境。开发环境。生产环境以及高级复制或热备份数发环境。生产环境以及高级复制或热备份数据库之间的快
43、速数据迁移;数据泵还能实现据库之间的快速数据迁移;数据泵还能实现部分或全部数据库逻辑备份,以及跨平台的部分或全部数据库逻辑备份,以及跨平台的可传输表空间备份。可传输表空间备份。1.概述概述数据泵技术相对应的工具是数据泵技术相对应的工具是Data Pump Export和和Data Pump Import。它的功能与前。它的功能与前面介绍的面介绍的EXP和和IMP类似,所不同的是数据泵的类似,所不同的是数据泵的高速并行的设计使得服务器运行时执行导入和导高速并行的设计使得服务器运行时执行导入和导出任务快速装载或卸载大量数据。出任务快速装载或卸载大量数据。数据泵可以实现断点重启,即一个任务无论是数据
44、泵可以实现断点重启,即一个任务无论是人为地中断还是意外中断,都可以从断点地方重人为地中断还是意外中断,都可以从断点地方重新启动。新启动。1.概述概述数据泵技术是基于数据泵技术是基于EXP/IMP的操作,主要用于的操作,主要用于对大量数据的大的作业操作。在使用数据泵进行对大量数据的大的作业操作。在使用数据泵进行数据导出与加载时,可以使用多线程并行操作。数据导出与加载时,可以使用多线程并行操作。2.数据泵的使用数据泵的使用 在在Oracle 10g中,有两种方式使用数据中,有两种方式使用数据泵泵:一是在命令方式导出与导入数据;一是在命令方式导出与导入数据;二是基于二是基于Web的企业管理器中进行导
45、入导的企业管理器中进行导入导出。出。2.数据泵的使用数据泵的使用-使用使用EXPDP导出导出EXPDP可以交互进行也可以通过命令进行。可以交互进行也可以通过命令进行。表表9.3给出给出EXPDP命令的操作参数。命令的操作参数。表表9.3 EXPDP关键字关键字表表9.3 EXPDP关键字关键字2.数据泵的使用数据泵的使用-使用EXPDP导出【例4】使用使用EXPDP导出导出admin用户的表用户的表XS。(1)EXPDP准备工作。在使用准备工作。在使用EXPDP之前,之前,需要创建一个目录,用来存储数据泵导出需要创建一个目录,用来存储数据泵导出的数据。使用如下方法创建目录:的数据。使用如下方法
46、创建目录:SQLCREATE DIRECTORY dpump_dir as d:bak;2.数据泵的使用数据泵的使用-使用使用EXPDP导出导出 (2)在目录创建后,必须给导入导出的用在目录创建后,必须给导入导出的用户赋予目录的读写权限。户赋予目录的读写权限。SQLGRANT READ,WRITE ON DIRECTORY dpump _dir TO ADMIN;2.数据泵的使用数据泵的使用-使用EXPDP导出(3)使用使用EXPDP导出数据。导出数据。C:expdp admin/admin123dumpfile=xs.dmp directory=dpump _dir tables=xs jo
47、b_name=xs_job2.数据泵的使用数据泵的使用-使用EXPDP导出Export:Release 10.2.0.1.0-Production on 星期六星期六,10 6月月,2019 16:31:54Copyright(c)2019,2019,Oracle.All rights reserved.连接到连接到:Oracle Database 10g Enterprise Edition Release 10.2.0.1.0-ProductionWith the Partitioning,OLAP and Data Mining options2.数据泵的使用数据泵的使用-使用EXPDP
48、导出启动启动 ADMIN.XS_JOB:admin/*dumpfile=xs.dmp directory=dpump_dir tables=xs job_name=xs_job正在使用正在使用 BLOCKS 方法进行估计方法进行估计.处理对象类型处理对象类型 TABLE_EXPORT/TABLE/TABLE_DATA使用使用 BLOCKS 方法的总估计方法的总估计:64 KB处理对象类型处理对象类型 TABLE_EXPORT/TABLE/TABLE2.数据泵的使用数据泵的使用-使用EXPDP导出处理对象类型处理对象类型 TABLE_EXPORT/TABLE/INDEX/INDEX处理对象类型处
49、理对象类型 TABLE_EXPORT/TABLE/CONSTRAINT/CONSTRAINT处理对象类型处理对象类型 TABLE_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS.导出了导出了 ADMIN.XS 7.929 KB 22 行行已成功加载已成功加载/卸载了主表卸载了主表 ADMIN.XS_JOB*2.数据泵的使用数据泵的使用-使用EXPDP导出ADMIN.XS_JOB 的转储文件集为的转储文件集为:D:BAKXS.DMP作业作业 ADMIN.XS_JOB 已于已于 16:33:49 成功完成功完成成2.数据泵的使用数据泵的使用-使用导出向
50、导导出使用导出向导导出2.使用导出向导导出使用导出向导导出使用导出向导导出数据,首先要创建目录使用导出向导导出数据,首先要创建目录对象。对象。(1)创建目录对象创建目录对象/*注意:一定要以注意:一定要以sys名义登录名义登录*/在如图在如图9.13所示的所示的Oracle企业管理器中,企业管理器中,在在“方案方案”类别选择类别选择“目录对象目录对象”单击鼠单击鼠标左键,进入标左键,进入“目录对象搜索目录对象搜索”界面,如界面,如图图9.14所示。所示。图图9.13 Oracle企业管理器企业管理器 图图9.14目录对象搜索界面目录对象搜索界面2.数据泵的使用数据泵的使用-使用导出向导导出使用