第12章+DM数据库的备份和还原教学课件_第1页
第12章+DM数据库的备份和还原教学课件_第2页
第12章+DM数据库的备份和还原教学课件_第3页
第12章+DM数据库的备份和还原教学课件_第4页
第12章+DM数据库的备份和还原教学课件_第5页
已阅读5页,还剩80页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

主讲教师:时间:202x.xx.xx第12章DM数据库的备份和还原DM备份和还原概述DM联机备份与还原DM脱机备份与还原DM逻辑备份与还原知识点小结DM备份和还原概述数据库备份是DBA日常最重要的工作内容。备份的主要目的是数据容灾,保证数据的安全性,在数据库发生故障时,通过还原和恢复,将数据恢复到可用状态。数据库备份分为物理备份和逻辑备份两种类型。逻辑备份是指利用dexp导出工具,将指定对象(库级、用户级、模式级、表级)的数据导出到指定文件的备份方式。逻辑备份针对的是数据内容,并不关心这些数据物理存储在什么位置。物理备份则直接扫描数据库文件,找出那些已经分配、使用的数据页,拷贝并保存到备份集中。物理备份过程中,不关心数据页的具体内容,也不关心数据页属于哪张表,只根据数据库文件系统的描述挑选有效数据页。01PARTONEDM备份和还原概述DM数据库的物理备份DM数据库的物理还原DM数据库的物理备份DM数据库中的数据存储在物理数据文件中,数据文件按照页、簇和段的方式进行管理,数据页是最小的数据存储单元。任何一个对DM数据库的操作,归根结底都是对某个数据文件页的读写操作。DM物理备份的本质就是从数据库文件中拷贝有效的数据页保存到备份集中,这里的有效数据页包括数据文件的描述页和被分配使用的数据页。DM一个备份集对应了一次完整的备份,备份集由备份片和元数据文件组成。DM备份集一般情况下,一个备份集就是一个目录,备份集由一个或多个备份片文件和一个元数据文件组成。备份片是用来存储备份数据的文件。文件后缀为.bak,用来存放备份数据,存放数据页的备份片称为数据备份片,存放REDO日志的备份片称为日志备份片。DM备份集元数据文件用来存放备份信息。文件后缀为.meta。通过元数据文件,可以了解整个备份集信息。元数据文件中包含的备份信息包括:备份集本身相关信息,如是否联机备份,备份范围,备份加密以及压缩信息等;备份源库的建库参数信息,如簇大小页大小,是否大小写敏感,字符集等;数据文件信息,如备份了哪些数据文件,文件大小,以及文件相关的表空间信息等;备份片的信息,如包含哪些备份片文件、备份片大小等信息;备份库的dm.ini参数信息。DM数据库的备份(续)物理备份包含联机备份(热备份)和脱机备份(冷备份)。联机备份时,数据库处于运行状态,可以对外提供服务。因此可能存在一些处于活动状态的事务正在执行,所以联机备份是非一致性备份,为确保备份数据的一致性,需要将备份期间产生的REDO日志一起备份。因此,只能在配置本地归档、并开启本地归档的数据库上执行联机备份。脱机备份时,数据库必须关闭。脱机备份是一致性备份。数据库正常关闭时,会生成完全检查点,脱机备份生成的备份集中,不包含任何REDO日志。DM数据库的备份(续)DM物理联机备份一般包括数据备份和日志备份两部分,数据备份是拷贝数据页内容,日志备份则是拷贝备份过程中产生的REDO日志。01PARTONEDM备份和还原概述DM数据库的备份DM数据库的还原DM数据库的还原还原与恢复是备份的逆过程,还原与恢复的主要目的是将目标数据库恢复到备份结束时刻的状态,也可以利用归档日志恢复到最新状态。还原的主要动作是将数据页从备份集中拷贝回数据库文件相应位置,恢复则是重做REDO日志将数据库恢复到一致性状态。备份与还原关系如图所示。DM备份和还原概述DM联机备份与还原DM脱机备份与还原DM逻辑备份与还原知识点小结02PARTONEDM联机备份与还原DM数据库的联机备份DM数据库的联机还原DM数据库的联机备份数据库处于运行状态、并正常提供数据库服务情况下进行的备份操作,称为联机备份。联机备份通过使用disql工具或者DM管理工具图形化界面连接到数据库实例后操作,也可以通过配置作业,定时完成自动备份。联机备份不影响数据库正常提供服务,是最常用的备份手段之一。联机备份时,可能存在一些处于活动状态的事务正在执行,为确保备份数据的一致性,需要将备份期间产生的REDO日志一起备份。因此,只能在配置本地归档文件、并开启本地归档的数据库上执行联机备份。即联机备份需要数据库开启归档。归档模式和非归档模式默认数据库运行在非归档模式下。非归档模式下,数据库只将重做日志写入联机日志文件中进行存储;归档模式下,数据库会同时将重做日志写入联机日志文件和归档日志文件中分别进行存储。备份与恢复过程都依赖归档日志,归档日志是保证数据一致性和完整性的重要保障。归档模式会对系统的性能产生影响,然而系统在归档模式下运行会更安全,当出现故障时其丢失数据的可能性更小,这是因为一旦出现介质故障,如磁盘损坏时,利用归档日志,系统可被恢复至故障发生的前一刻,也可以还原到指定的时间点。如何开启归档DM数据库只能在MOUNT状态下开启归档。MOUNT状态为数据库配置状态。使用如下SQL可以打开数据库为归档状态并配置归档类型、归档文件大小、归档路径、归档空间大小上限等信息:alter

database

mount;alter

database

archivelog;alter

database

add

archivelog

'type=local,dest=/dm8/arch,file_size=512,space_limit=10240';alter

database

open;库级备份语法SQL库级备份语法如下:BACKUPDATABASE[[FULL]|INCREMENT[CUMULATIVE][WITHBACKUPDIR'<基备份搜索目录>'{,'<基备份搜索目录>'}|[BASEON<BACKUPSET'<基备份目录>']][TO<备份名>]BACKUPSET['<备份集路径>'][DEVICETYPE<介质类型>[PARMS'<介质参数>']][BACKUPINFO'<备份描述>'][MAXPIECESIZE<备份片限制大小>][COMPRESSED[LEVEL<压缩级别>]][WITHOUTLOG][TASKTHREAD<线程数>][PARALLEL[<并行数>]];库级备份语法主要参数说明:FULL:表示完全备份,在不指定该选项的情况下,默认是完全备份。INCREMENT:表示增量备份,执行增量备份必须指定该参数。CUMULATIVE:表示累积增量备份(备份完全备份以来所有变化的数据块),若不指定,默认为差异增量备份(备份上次备份以来有变化的数据块)。WITHBACKUPDIR:指定增量备份中基备份的搜索目录。若不指定,服务器自动在默认备份目录下搜索基备份。如果基备份不在默认的备份目录下,增量备份必须指定该参数。BASEON:用于增量备份中,指定基备份集目录。TO:指定生成备份的名称。若没有指定,则随机生成,默认备份名格式为:DB_备份类型_数据库名_备份时间。库级备份语法BACKUPSET:指定当前备份集生成路径。若没有指定,则在默认备份路径中生成默认备份集目录。DEVICETYPE:指存储备份集的介质类型,支持DISK和TAPE,默认DISK。PARMS:只对介质类型为TAPE时有效。BACKUPINFO:备份的描述信息。最大不超过256个字节。MAXPIECESIZE:最大备份片文件大小上限,以MB为单位,最小32MB,32位系统最大2GB,64位系统最大128GB。备份片内容超过设置大小将生成多个备份片。COMPRESSED:是否对备份数据进行压缩处理。LEVEL表示压缩等级,取值范围0~9:0表示不压缩;1表示1级压缩;9表示9级压缩。PARALLEL:指定并行备份的并行数和拆分块大小。并行数取值范围0~128。若不指定并行数,则默认为4,若指定为0或者1均认为非并行备份。若未指定关键字PARALLEL,则认为非并行备份。库级备份示例例12-1:全量备份数据库至D:\dm_bak\fullbak01目录,备份集名称为fullbak01。backup

database

tofullbak01backupset

'D:\dm_bak\fullbak01';也可以使用DM管理工具图形化界面备份数据库:库级备份示例例12-2:全量备份数据库至D:\dm_bak\fullbak02目录,备份集名称为fullbak02,设置最大备份片大小为256M,备份文件压缩等级为5,并指定并行备份。backup

database

tofullbak02backupset

'D:\dm_bak\fullbak02'

maxpiecesize256compressed

level5parallel4;库级备份示例例12-3:增量备份数据库至D:\dm_bak\incrbak01目录,备份集名称为incrbak01。backup

database

increment

with

backupdir

'D:\dm_bak'

backupset

'D:\dm_bak\incrbak01';例12-4:累计增量备份数据库至D:\dm_bak\incrbak02目录,备份集名称为incrbak02。backup

database

increment

cumulative

with

backupdir

'D:\dm_bak'

toincrbak02backupset

'D:\dm_bak\incrbak02';库级备份示例查询v$backupset可以查看备份集信息,如果备份集在非默认备份目录,需要使用系统函数添加备份集目录:selectsf_bakset_backup_dir_add('disk','d:\dm_bak');select*fromv$backupset;若没有指定备份路径,系统默认在数据库默认备份目录备份,由参数BAK_PATH指定:selectt.para_name,t.para_valuefromv$dm_initwheret.para_name='BAK_PATH';表空间备份语法针对特定表空间的备份,称为表空间级备份。表空间备份只能在联机状态下执行。同备份数据库一样,执行表空间备份数据库实例必须运行在归档模式下。表空间备份语法备份表空间语法如下:BACKUPTABLESPACE<表空间名>[FULL|INCREMENT[CUMULATIVE][WITHBACKUPDIR'<基备份搜索目录>'{,'<基备份搜索目录>'}]|[BASEONBACKUPSET'<基备份集目录>’]][TO<备份名>]BACKUPSET['<备份集路径>'][DEVICETYPE<介质类型>[PARMS'<介质参数>']][BACKUPINFO'<备份集描述>'][MAXPIECESIZE<备份片限制大小>][COMPRESSED[LEVEL<压缩级别>]][TASKTHREAD<线程数>][PARALLEL[<并行数>][READSIZE<拆分块大小>]];表空间备份语法主要的参数说明:表空间名:指定备份的表空间名称(除了temp表空间)。FULL|INCREMENT:备份类型,FULL表示完全备份,INCREMENT表示增量备份。若不指定,默认为完全备份。CUMULATIVE:用于增量备份中,指明为累积增量备份类型,若不指定则缺省为差异增量备份类型。WITHBACKUPDIR:用于增量备份中,指定备份目录,最大长度为256个字节。若不指定,自动在默认备份目录下搜索基备份。如果基备份不在默认的备份目录下,增量备份必须指定该参数。表空间备份语法主要的参数说明:BASEON:用于增量备份中,指定基备份集目录。TO:指定生成备份名称。若未指定,系统随机生成,默认备份名格式为:DB_备份类型_表空间名_备份时间。BACKUPSET:指定当前备份集生成路径。若指定为相对路径,则在默认备份路径中生成备份集。若不指定,则在默认备份路径下以约定规则生成默认的表空间备份集目录。表空间级备份默认备份集目录名生成规则:TS_表空间名_备份类型_时间,如TS_MAIN_INCREMENT_20180518_143057_123456。表空间备份示例示例12-5:表空间完全备份示例。backup

tablespacedmtbsfull

todmtbs_fullbak01backupset

'd:\dm_bak\dmtbs_fullbak01’;示例12-6:表空间增量备份示例。backup

tablespacedmtbsincrement

todmtbs_incrbak01backupset

'd:\dm_bak\dmtbs_incrbak01';备份语句中指定的INCREMENT参数表示执行的备份类型为增量备份,不可省略。若要创建累积增量备份,还需要指定CUMULATIVE参数,否则缺省为差异增量备份。若基备份不在默认备份目录,则需要使用WITHBACKUPDIR参数指定搜索的基备份集目录。

表备份概述表备份不是直接扫描数据文件,而是从BUFFER中加载数据页,拷贝到备份片文件中。表备份的元信息包括建表语句、重建约束语句、重建索引语句,以及其他相关属性信息。表备份拷贝指定表使用的所有数据页到备份集中,并记录各个数据页之间的逻辑关系以用来恢复表数据结构。表备份只能在联机状态下执行,并且不支持增量表备份。与数据库、表空间备份不同,表备份不需要配置归档。一次表备份操作只能备份一张用户表。表备份语法和示例表备份的SQL语法如下:BACKUPTABLE<表名>[TO<备份名>]BACKUPSET['<备份集路径>'][DEVICETYPE<介质类型>[PARMS'<介质参数>']][BACKUPINFO'<备份集描述>'][MAXPIECESIZE<备份片限制大小>][COMPRESSED[LEVEL<压缩级别>]]示例12-7:备份dmhr用户下的EMPLOYEE表。backup

tabledmhr.employeebackupset

'EMPLOYEE_BAK’;备份集“EMPLOYEE_BAK”会生成到默认的备份路径下。归档备份归档是对REDO日志的归档,数据库正常状态下用不上归档日志文件,但当数据库发生损坏时,利用归档日志可以将数据库恢复到故障发生的前一刻或任意时间点。归档备份就是对归档日志文件的备份,数据库归档备份的前提:归档文件的db_magic、permanent_magic值和库的db_magic、permanent_magic值必须一样;服务器必须配置归档;归档日志必须连续,如果出现不连续的情况,前面的会忽略,仅备份最新的连续部分。如果未收集到指定范围内的归档,则不会备份。归档备份语法SQL归档备份语法如下:BACKUP<ARCHIVELOG|ARCHIVELOG>[ALL|[FROMLSN<lsn>]|[UNTILLSN<lsn>]|[LSNBETWEEN<lsn>AND<lsn>]|[FROMTIME'<time>']|[UNTILTIME'<time>']|[TIMEBETWEEN'<time>'>AND'<time>']][<notBackedUpSpec>][DELETEINPUT][TO<备份名>][<备份集子句>];<备份集子句>::=BACKUPSET['<备份集路径>'][BACKUPINFO'<备份描述>'][MAXPIECESIZE<备份片限制大小>][COMPRESSED[LEVEL<压缩级别>]][WITHOUTLOG][TASKTHREAD<线程数>][PARALLEL[<并行数>][READSIZE<拆分块大小>]];归档备份语法和示例语法和之前的差不多,这里介绍几个有区别的选项:ALL:备份所有的归档;FROMLSN/UNTILLSN:指定备份的起始/截止的lsn。FROMTIME/UNTILTIME:指定备份的开始/截止的时间点。BETWEEN...AND...:指定备份的区间。指定区间后,只会备份指定区间内的归档文件。DELETEINPUT:用于指定备份完成之后,是否删除归档操作。示例:可备份归档文件示例。backuparchivelog

all

backupset

'archbak01';备份集“archbak01”会生成到默认备份路径下。也可以使用绝对路径指定备份目录。联机还原指数据库处于运行状态时,通过SQL执行还原操作。DM联机还原仅支持表的联机还原。数据库、表空间和归档日志的还原必须在数据库关闭状态下操作。DM数据库的联机还原表还原是表备份的逆过程,表还原从表备份集中读取数据替换目标表,将目标表还原成备份时刻的状态。表还原只能从表级备份集中还原,不能从库级备份集或表空间级备份集中还原。表还原只支持在联机状态下执行,表还原不需要重做REDO日志。并且,表备份集允许跨库还原,但要求还原目标库与源库的数据页大小等建库参数相同。DM表还原概述表还原包括三部分:表结构还原、数据还原、以及重建索引和约束。如果还原目标表不存在,则利用备份集中记录的建表语句重建目标表;如果还原目标表已存在,则清除表中的数据、删除二级索引和约束;数据还原过程从表备份集拷贝数据页,重构数据页之间的逻辑关系,并形成一个完整的表对象。在数据还原结束后,使用备份集中信息,重建二级索引及各种约束。DM表还原概述DM表还原语法和示例表还原语法格式如下:RESTORETABLE[<表名>][STRUCT][KEEPTRXID]FROMBACKUPSET'<备份集路径>’[DEVICETYPE<介质类型>[PARMS'<介质参数>']][IDENTIFIEDBY<密码>|”<密码>”[ENCRYPTWITH<加密算法>]][TRACEFILE'<TRACE文件名>'][TRACELEVEL<TRACE日志级别>];示例12-8:利用RESTORE语句还原表示例。restore

tabledmhr.employeeSTRUCT

from

backupset

'EMPLOYEE_BAK';restore

tabledmhr.employeefrom

backupset

'EMPLOYEE_BAK’;DM备份和还原概述DM联机备份与还原DM脱机备份与还原DM逻辑备份与还原知识点小结DM脱机备份与还原数据库处于关闭状态时进行的备份操作,被称为脱机备份。DMRMAN(DMRECOVERYMANEGER)是DM数据库的脱机备份还原管理工具,由它来统一负责库级脱机备份、脱机还原、脱机恢复等相关操作,该工具支持命令行指定参数方式和控制台交互方式执行,降低了用户的操作难度。也可以使用DM控制台工具图形化界面来操作数据库的脱机备份、脱机还原和恢复。03PARTONEDM脱机备份与还原DM数据库的脱机备份DM数据库的脱机还原与恢复DM数据库的脱机备份DMRMAN(DMRECOVERYMANAGER)是DM自带的脱机备份还原管理工具,位于DM安装bin目录下。在使用DMRMAN工具时需要注意3点:(1)DmAPService服务是正常运行的。(2)在DM_HOME/bin目录下执行dmrman命令。(3)备份的实例必须是关闭状态。DM数据库的脱机备份(续)DMRMAN的数据库语法如下:BACKUPDATABASE'<INI文件路径>'[[FULL]|INCREMENT[CUMULATIVE][WITHBACKUPDIR'<基备份搜索目录>'{,'<基备份搜索目录>’}]|[BASEONBACKUPSET'<基备份集目录>']][TO<备份名>][BACKUPSET'<备份集目录>'][DEVICETYPE<介质类型>[PARMS'<介质参数>'][BACKUPINFO'<备份描述>'][MAXPIECESIZE<备份片限制大小>][IDENTIFIEDBY<加密密码>[WITHENCRYPTION<TYPE>][ENCRYPTWITH<加密算法>]][COMPRESSED[LEVEL<压缩级别>]][WITHOUTLOG][TASKTHREAD<线程数>][PARALLEL[<并行数>]];DM数据库的脱机备份(续)语法和联机备份类似,这里只描述一个参数DATABASE后面的‘<INI文件路径>’。因为连接备份是通过SQL执行的,在执行之前已经确认了连接的数据库实例信息。而DMRMAN是脱机备份,所以在DATABASE选项之后必须加上dm.ini参数的绝对路径,以确定备份哪一个数据库。其他参数说明可以参考联机备份部分。如果不指定备份集路径,默认在默认备份路径下生成备份集目录,默认的备份路径为dm.ini中BAK_PATH的配置值,若未配置,则使用SYSTEM_PATH下的bak目录。DMRMAN脱机备份示例示例12-9:完全备份数据库。 RMAN>backupdatabase‘D:\dmdbms\data\DAMENG\dm.ini’fullbackupset‘D:\dm_bak\dmrman\FULLBAK01';示例12-10:增量备份数据库。 RMAN>backupdatabase‘D:\dmdbms\data\DAMENG\dm.ini'incrementwithbackupdir'D:\dm_bak\dmrman'backupset'D:\dm_bak\dmrman\incrbak01';03PARTONEDM脱机备份与还原DM数据库的脱机备份DM数据库的脱机还原与恢复DM数据库的脱机还原与恢复脱机还原指数据库处于关闭状态时执行的还原和恢复操作,脱机还原与恢复通过DMRMAN工具进行。库备份集、表空间备份集和归档文件备份集,可以执行脱机还原。脱机还原操作的目标库必须处于关闭状态。脱机恢复包含库恢复和表空间恢复。数据库库级还原和恢复包含3个动作:还原(RESTORE)、恢复(RECOVER)、数据库更新(UPDATEDB_MAGIC)。库还原库还原就是根据库备份集中记录的文件信息重建数据库文件,并将数据页重新拷贝至目标数据库的过程。RESTORE命令从备份集中进行对象的还原(配置文件和数据文件等),备份集可以是脱机库级备份集,也可以是联机库级备份集。可以指定还原到目标库,也可以指定还原到某一目标目录。库还原库还原语法如下:RESTOREDATABASE<restore_type>FROMBACKUPSET'<备份集目录>'[DEVICETYPEDISK|TAPE[PARMS'<介质参数>']][IDENTIFIEDBY<密码>[ENCRYPTWITH<加密算法>]][WITHBACKUPDIR'<基备份集搜索目录>'{,'<基备份集搜索目录>'}][MAPPEDFILE'<映射文件>'][TASKTHREAD<任务线程数>][NOTPARALLEL][RENAMETO'<数据库名>'];<restore_type>::=<type1>|<type2><type1>::='<INI文件路径>'[REUSEDMINI][OVERWRITE]<type2>::=TO'<system_dbf所在路径>'[OVERWRITE]库还原(续)参数说明:DATABASE:指定还原库目标的dm.ini文件路径。WITHCHECK:指定还原前校验备份集数据完整性。缺省不校验。BACKUPSET:指定用于还原目标数据库的备份集目录。若指定为相对路径,会在默认备份目录下搜索备份集。DEVICETYPE:指存储备份集的介质类型,支持DISK和TAPE,默认为DISK。PARMS:介质参数,供第三方存储介质(TAPE类型)管理使用。IDENTIFIEDBY:指定备份时使用的加密密码,供还原过程解密使用。ENCRYPTWITH:指定备份时使用的加密算法,供还原过程解密使用,若未指定,则使用默认算法。库还原(续)参数说明:WITHBACKUPDIR:指定备份集搜索目录。MAPPEDFILE:指定存放还原目标路径的文件。TASKTHREAD:指定还原过程中用于处理解压缩和解密任务的线程个数。若未指定,则默认为4;若指定为0,则调整为1;若指定超过当前系统主机核数,则调整为主机核数。RENAMETO:指定还原数据库后是否更改库的名字,指定时将还原后的库改为指定的数据库名,默认使用备份集中的db_name作为还原后库的名称。OVERWRITE:还原数据库时,存在重名的数据文件时,是否覆盖重建,不指定时默认报错。库恢复数据库恢复RECOVER命令是在RESTORE之后继续完成数据库恢复工作,可以基于备份集,也可以基于本地的归档日志,主要是利用日志来恢复数据的一致性。数据库恢复有两种方式:1)从备份集恢复,即重做备份集中的REDO日志;基于备份集恢复只能恢复至备份结束的时间点。2)从归档恢复,即重做归档中的REDO日志。基于归档的恢复可以恢复到故障的前一刻,也可以恢复至任意时间点。基于备份集恢复在数据库比较大,或者事务比较多的情况下,备份过程中生成的日志也会存储到备份集中,比如联机备份(SQL语句备份),在这种情况下,执行数据库还原后,还需要重做备份集中备份的日志,以将数据库恢复到备份时的一致性状态,即从备份集恢复。基于备份集恢复只能将数据库恢复至备份结束的时间点。基于归档恢复基于归档恢复可以将数据库恢复至最新状态。基于归档恢复的RECOVER命令语法如下:RECOVERDATABASE'<INI文件路径>'WITHARCHIVEDIR'<归档日志目录>'{,'<归档日志目录>'}[USEDB_MAGIC<db_magic>][UNTILTIME'<时间串>'][UNTILLSN<LSN>];基于备份集的RECOVER命令语法如下:RECOVERDATABASE'<INI文件路径>'FROMBACKUPSET'<备份集目录>'[DEVICETYPEDISK|TAPE[PARMS'<介质参数>']][IDENTIFIEDBY<密码>[ENCRYPTWITH<加密算法>]];基于归档恢复这里注意2个参数:WITHARCHIVEDIR:本地归档日志搜索目录,若未指定,则仅使用目标库配置本地归档目录。USEDB_MAGIC:指定本地归档日志对应数据库的DB_MAGIC,若不指定,则默认使用目标恢复数据库的DB_MAGIC。DB_MAGIC是一个唯一值,每个实例都不一样。数据库更新

数据库更新(UPDATEDB_MAGIC)也是利用RECOVER命令实现的。在数据库执行恢复命令后,需要执行更新操作(UPDATEMAGIC),将数据库调整为可正常工作的库才算完成。当然数据库数据库在执行完RESTORE之后就已经是一致性的状态(比如脱机备份的恢复),可以不用进行RECOVER恢复操作,直接进行UPDATEDB_MAGIC。数据库更新语法如下: RMAN>RECOVERDATABASE'<INI文件路径>'UPDATEDB_MAGIC;库级还原与恢复示例(基于备份集恢复)示例12-11:库级还原和恢复,基于备份集恢复至备份结束时刻。示例:(1)SQL联机备份数据库: SQL>backupdatabasebackupset'D:\dm_bak\fullbak01';示例:(2)停止数据库实例。示例:(3)还原数据库: RMAN>restoredatabase'D:\dmdbms\data\DAMENG\dm.ini'frombackupset'D:\dm_bak\fullbak02';示例:(4)从备份集恢复数据库: RMAN>recoverdatabase‘D:\dmdbms\data\DAMENG\dm.ini'frombackupset'D:\dm_bak\fullbak02';示例:(5)更新数据库: RMAN>recoverdatabase'D:\dmdbms\data\DAMENG\dm.ini'updatedb_magic;库级还原与恢复(基于归档恢复)示例12-12:库级还原和恢复,基于归档恢复到最新状态。示例:(1)SQL联机备份数据库: SQL>backupdatabasebackupset'D:\dm_bak\fullbak02';示例:(2)停止数据库实例。示例:(3)还原数据库: RMAN>restoredatabase'D:\dmdbms\data\DAMENG\dm.ini'frombackupset'D:\dm_bak\fullbak02';示例:(4)从归档恢复数据库至最新状态: RMAN>recoverdatabase'D:\dmdbms\data\DAMENG\dm.ini'witharchivedir'D:\arch';示例:(5)更新数据库: RMAN>recoverdatabase'D:\dmdbms\data\DAMENG\dm.ini'updatedb_magic;表空间还原与恢复

DM8表空间是联机备份,脱机还原。由于表空间的数据库对象等字典信息保存在数据库的SYSTEM表空间中,为保证还原后表空间与当前库保持一致状态,缺省会基于当前归档日志将表空间数据恢复到最新状态。表空间还原使用RESTORE命令完成表空间的脱机还原。还原的备份集可以是联机或脱机生成的库级备份集,也可以是联机生成的表空间级备份集。表空间还原仅涉及表空间数据文件的重建与数据页的拷贝。表空间还原RESTORE的语法如下:RESTOREDATABASE'<INI文件路径>'TABLESPACE<表空间名>[DATAFILE<<文件编号>{,<文件编号>}|'<文件路径>'{,'<文件路径>'}>]FROMBACKUPSET'<备份集目录>'[DEVICETYPEDISK|TAPE[PARMS'<介质参数>']][IDENTIFIEDBY<密码>[ENCRYPTWITH<加密算法>]][WITHBACKUPDIR'<基备份集搜索目录>'{,'<基备份集搜索目录>'}][<with_archdir_lst_stmt>][MAPPEDFILE'<映射文件>'][TASKTHREAD<任务线程数>][NOTPARALLEL][UNTILTIME'<时间串>'][UNTILLSN<LSN>];<with_archdir_lst_stmt>::=WITHARCHIVEDIR'<归档日志目录>'{,'<归档日志目录>'}表空间还原(续)参数说明:DATABASE:指定还原目标库的dm.ini文件路径。TABLESPACE:指定还原的表空间,TEMP表空间除外。DATABASE:指定还原目标库的dm.ini文件路径。TABLESPACE:指定还原的表空间,TEMP表空间除外。DATAFILE:还原指定的数据文件。可以指定数据文件编号或数据文件路径。文件编号,对应动态视图V$DATAFILE中ID列的值;文件路径,对应动态视图V$DATAFILE中PATH的值,也可以仅指定数据文件名称(相对路径),与表空间中数据文件匹配时,会使用SYSTEM目录补齐。BACKUPSET:指定还原备份集路径。若指定相对路径,会在默认备份目录下搜索备份集。表空间恢复表空间恢复通过重做REDO日志,以将数据更新到一致性状态。由于日志重做过程中,修改好的数据页首先存入缓冲区,缓冲区分批次将修改好的数据页写入磁盘,如果在此过程中发生异常中断,可能导致缓冲区中的数据页无法写入磁盘,造成数据的不一致,数据库启动时校验失败,所以表空间恢复过程中不允许异常中断。恢复完成后,表空间状态置为ONLINE,并设置数据标记为FIL_TS_RECV_STAT_RECOVERED,表示数据已恢复到一致状态。表空间恢复(续)语法如下:RECOVERDATABASE'<ini_path>'TABLESPACE<表空间名>[WITHARCHIVEDIR'归档日志目录'{,'归档日志目录'}][USEDB_MAGIC<db_magic>];说明:DATABASE:指定还原目标库的dm.ini文件路径。TABLESPACE:指定还原的表空间,TEMP表空间除外。WITHARCHIVEDIR:归档日志搜索目录。缺省情况下在dmarch.ini中指定的归档目录中搜索。如果归档日志不在配置文件dmarch.ini中指定的目录下,或者归档日志分散在多个目录下,需要使用该参数指定归档日志搜索目录。USEDB_MAGIC:指定本地归档日志对应数据库的DB_MAGIC,若不指定,则默认使用目标恢复数据库的DB_MAGIC。表空间还原与恢复示例示例12-13:以联机表空间备份为例,展示DMRMAN如何完成表空间的恢复。1)联机备份表空间,保证数据库运行在归档模式及OPEN状态;SQL>BACKUPTABLESPACEMAINBACKUPSET‘D:\dm_bak\ts_fullbak';2)还原表空间。需要注意,表空间还原的目标库只能是备份集产生的源库,否则将报错。启动DMRMAN,输入以下命令:RMAN>RESTOREDATABASE‘D:\dmdbms\data\DAMENG\dm.ini'TABLESPACEMAINFROMBACKUPSET'D:\dm_bak\ts_fullbak';3)恢复表空间。启动DMRMAN,输入以下命令,数据库默认会使用归档日志将表空间恢复至最新状态:RMAN>RECOVERDATABASE'D:\dmdbms\data\DAMENG\dm.ini'TABLESPACEMAIN;归档还原使用RESTORE命令完成脱机还原归档操作,在还原语句中指定归档备份集。备份集可以是脱机归档备份集,也可以是联机归档备份集。归档只有还原没有恢复。归档还原语法如下:RESTORE<ARCHIVELOG|ARCHIVELOG>[withcheck]FROMBACKUPSET'<备份集路径>'[<device_type_stmt>][IDENTIFIEDBY<密码>|”<密码>”[ENCRYPTWITH<加密算法>]][TASKTHREAD<任务线程数>][NOTPARALLEL][ALL|[FROMLSN<lsn>]|[UNTILLSN<lsn>]|[LSNBETWEEN<lsn>AND<lsn>]|[FROMTIME'<time>']|[UNTILTIME'<time>']|[TIMEBETWEEN'<time>'AND'<time>']]TO<还原目录>[OVERWRITE<level>];<device_type_stmt>::=DEVICETYPE<介质类型>[PARMS'<介质参数>']<还原目录>::=ARCHIVEDIR'<归档日志目录>'|DATABASE'<ini_path>'归档还原示例示例12-14:以联机归档文件备份为例,展示DMRMAN如何完成归档文件的还原,具体步骤如下。1)联机备份归档文件,保证数据库运行在归档模式及OPEN状态。 SQL>BACKUPARCHIVELOGALLBACKUPSET‘D:\dm_bak\archbakall';2)还原归档文件。启动DMRMAN,设置OVERWRITE为2,如果归档文件已存在,会报错。RMAN>RESTOREARCHIVELOGFROMBACKUPSET'D:\dm_bak\archbakall'TODATABASE'D:\dmdbms\data\DAMENG\dm.ini'OVERWRITE2;或者RMAN>RESTOREARCHIVELOGFROMBACKUPSET'D:\dm_bak\archbakall'TOARCHIVEDIR'D:\arch_dest'OVERWRITE2;DM备份和还原概述DM联机备份与还原DM脱机备份与还原DM逻辑备份与还原知识点小结04PARTONEDM逻辑备份与还原逻辑备份逻辑还原DM逻辑备份与还原逻辑备份与还原是对数据库逻辑组件(如表、视图和存储过程等数据库对象)的备份与还原。可以使用dexp和dimp两个命令行工具,分别实现对DM数据库的逻辑备份和逻辑还原。位于DM安装bin目录下。逻辑备份还原的目的是保护数据库的逻辑组件免遭数据丢失或破坏的危险,当遇到数据库逻辑组件丢失或者遭到破坏时,能够及时的重构数据库,还原数据库的逻辑组件。DM数据库逻辑备份和逻辑还原都是在联机方式下完成。即数据库服务器正常运行过程中进行的导出与导入。逻辑备份dexp工具可以对本地或者远程数据库进行数据库级、用户级、模式级和表级的逻辑备份。备份的内容非常灵活,可以选择是否备份索引、数据行和权限,是否忽略各种约束等,在备份前可以指定导出的数据文件目录,导出的数据文件名,生成日志文件等,记录备份的过程以供查看。语法如下:dexpPARAMETER=<value>{PARAMETER=<value>}注:PARAMETER:dexp参数。多个参数之间排列顺序无影响,参数之间使用空格间隔。<value>:参数取值。在运用dexp工具进行导出时,执行dexphelp可以使用帮助。逻辑备份(续)逻辑备份(主要参数)参数名是否必选描述说明USERID必选用于连接服务器。格式:USER/PWD@SERVER:PORTFILEdexp可选用于指定导出的文件(可包含路径),可包含多个文件(逗号分隔)。导出时如果不指定,默认为dexp.dmp。FILE和LOG中指定的路径,优先级高于DIRECTORY;当FILE和LOG不指定路径时,才使用DIRECTORY指定的路径;如果三者都没有指定路径,使用系统当前路径。LOG可选用于指定导出的日志文件(可包含路径),可包含多个文件(逗号分隔)。如果不指定,默认为dexp.log.log。DIRECTORY可选用于指定文件及日志文件路径,缺省为系统当前路径。逻辑备份示例示例12-15:全库导出将用户名和密码均为SYSDBA,IP地址为192.168.0.248,端口号为5238的数据库采用FULL方式完全导出。导出文件名为db_full.dmp,导出的日志文件名为db_full.log,导出文件的路径为D:\db_bak\dexp。数据文件最大值不超过128M,超过128M拆分为多个文件。操作命令为:dexpUSERID=SYSDBA/SYSDBA@192.168.0.248:5238FILE=dbfull_%U.dmpDIRECTORY=D:\db_bak\dexpLOG=dbfull_%U.logFULL=Yfiles

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论