备份恢复技术_第1页
备份恢复技术_第2页
备份恢复技术_第3页
备份恢复技术_第4页
备份恢复技术_第5页
已阅读5页,还剩115页未读 继续免费阅读

下载本文档

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

文档简介

1、备份恢复技术徐荣星备 份 方 法逻辑备份 exp/expdp物理备份 在线备份或者离线备份 实时备份 数据库闪回物理备份和逻辑备份 物理备份在存储级别实现,采用RMAN、COPY等操作实现。而逻辑备份在SQL级别实现,比如exp、expdp等工具。 物理备份是应付介质故障的最好方法,而逻辑备份是对付误操作的最佳工具。热备份和冷备份 热备份不中断业务运行,而冷备份必须在数据库关闭状态下运行。 热备只有归档模式才可以执行。 热备份是不一致的备份,单独一份热备份无法实现数据库的正常的Open,需要备份开始到结束的归档日志的支持。 冷备份是一致性备份,应该包含online Redo log文件。RMA

2、N备份 RMAN是Oracle提供的备份管理工具,整合在Oracle内核中,为一免费产品。 备份集可以存储到磁带。 Catalog为Rman的辅助产品,更好的完成Rman实现的功能。在Oracle 8i中,Catalog是一个建议配件,但Oracle 9i开始,Oracle开始弱化catalog的功能,逐步整合到控制文件中。 RMAN备份工具介绍RMAN 命令浏览Storedscripts生产库生产库REPORTLISTCatalog库OEMRestore/Recover/FlashbackCatalog maintenanceCROSSCHECKDELETEEXPIRECHANGESPFIL

3、EBackup控制文件归档日志RMANRMAN 命令 RMAN 命令类型 单独命令,在RMAN提示符下直接执行 JOB命令,命令必须包含在run里执行JOB命令: 案例 RUN 命令:RMAN RUN 2 BACKUP AS BACKUPSET 3 FORMAT /u01/db01/backup/%d_%s_%p 4 DURATION 10:00 MINIMIZE LOAD; 5 (DATABASE) 6 SQL alter system archive log current; 7 BACKUP 命令RMAN BACKUP AS BACKUPSET 2 FORMAT /BACKUP/df_%

4、d_%s_%p.bus 3 TABLESPACE hr_data;Backup setData file 1Data file 2Data file 3Data file 1Data file 2Data file 3Tablespace HR_DATABackup命令(续) 数据库必须处于mounted or open. 不能备份Online redo log 在非归档模式下能备份”干净”库备份集分片 分配多个通道,可以指定具体数据文件.Data file 4Data file 1Data file 5ChannelMMLBackuppiece 1Backuppiece 2Data file

5、 2Data file 3Data file 9ChannelMMLData file 6Data file 7Data file 8BackupPiece 3ChannelMMLBackups压缩RMAN BACKUP AS 2 COMPRESSED BACKUPSET 3 DATABASE;RMAN CONFIGURE DEVICE TYPE 2 DISK PARALLELISM 2 3 BACKUP TYPE TO 4 COMPRESSED BACKUPSET;Compressed backup filesDatabase filesBACKUP 命令(续) 检查物理块腐败 设置允许块腐

6、败的上限 校验输入文件块腐败备份归档日志 能指定范围备份归档日志 备份集仅仅包含归档日志文件RMAN BACKUP 2 FORMAT /disk1/backup/ar_%t_%s_%p 3 ARCHIVELOG FROM SEQUENCE=234 4 DELETE INPUT;整库备份RMAN BACKUP DATABASE;Archived log file copiesSPFILEControlfileData file copies全备份和增量备份 只有存在全备份才有可能在介质损坏情况的下数据库恢复。 增量备份依赖于全备份存在,备份从上次备份以来的变化数据。 增量备份可以分为: incr

7、ement和CumulativeBackup increment level 0 database;Backup increment level 1 database;增量备份 0级备份 相当于全库.累计备份备份自0级备份后 所有变化的块.增 量 备份自上次增量备份后 所有的块变化Full backup 增量备份累计增量备份增量备份:示例 增量备份仅仅备份自上次增量备份后变化的块 累计备份,备份自上次0级备份后所有变化块LvlDaySunMonTueWedThuFriSatSunLevel 0Level 0111c11001c块变化跟踪 通过跟踪文件记录变化块 大大加快增量备份速度,避免全扫数

8、据文件List of changed blocksRedogenerationRedo log101100101011000011101001011010101110011Change trackingfileSGACTWR启动变化块跟踪SQL ALTER DATABASE ENABLE 2 BLOCK CHANGE TRACKING 3 USING FILE /mydir/rman_change_track.f 4 REUSE;LIST 命令 List 显示备份集体及保护的数据文件 List显示备份归档日志RMAN LIST BACKUP OF DATAFILE 2 /db01/ORADAT

9、A/u03/users01.dbf;RMAN LIST BACKUP OF DATABASE;RMAN LIST BACKUP OF ARCHIVELOG 2 ; 物理备份数据库恢复物理备份数据库恢复Restore & Recover 备份是为了恢复。 恢复分为两步: restore 从备份中还原到目标系统中去。 recover 应用归档日志实现数据恢复。恢复步骤Restored 数据文件数据文件包含未提交数据恢复好的数据库应用日志回滚未提交数据54321ArchivedlogArchivedlogOnlineRedo log完 全 恢 复 完全恢复包含media recover和Cr

10、ash recover,恢复到数据库Crash时的那一刻。Media recover应用归档日志,Crash recover应用Online Redo Log。 完全恢复可以完全恢复任何数据,这是最理想的状况。 但有时候并不可行,比如误操作或者日志文件丢失或者损坏等等情况。完全恢复 Restore database; recover database; alter database open;不完全恢复 不完全恢复为恢复到之前的某一个时间点,仅仅应用归档日志,不会进行Crash recover。 不完全恢复要丢失一部分数据,除非是特定的操作比如恢复表格。不完全恢复场合 由于缺少归档日志完全恢复

11、失败 未归档的在线日志丢失或Current在线日志丢失 误操作,要求数据库恢复到之前某个时间点不完全恢复 Set until time ; restore database; recover database; alter database open resetlogs; restore database until scn recover database until scn alter database open resetlogs; restore database until sequence recover database until sequence alter database

12、 open resetlogs; Shut down and back up1Mount the database2UNTIL TIME 恢复案例Restore all data files3Open with Resetlogs5Back up the database6Database146Data file 1146Data file 2146Data file 3146Controlfiles146Redo logfile 1145Redo logfile 2OE.ORDERSRecovered Database1Data file 11Data file 21Data file 31

13、Controlfiles1Redo logfile 10Redo logfile 2OE.ORDERSRestored Database144Data file 1144Data file 2144Data file 3146Controlfiles146Redo logfile 1145Redo logfile 2144Archivedlog file4OE.ORDERS不完全恢复步骤1. Mount the database.2. Allocate multiple channels for parallelization.3. Restore all data files.4. Reco

14、ver the database by using UNTIL TIME, UNTIL SEQUENCE, or UNTIL SCN.5. Open the database by using RESETLOGS.6. Perform a whole database backup. 基于时间的不完全恢复RMAN RUN 2 set until time = to_date(2015-03-02 16:27:00,yyyy-mm-dd hh24:mi:ss); 3 RESTORE DATABASE; 4 RECOVER DATABASE; 5 ALTER DATABASE OPEN RESET

15、LOGS; 基于序号的不完全恢复RMAN RUN 2 SET UNTIL SEQUENCE 120 THREAD 1; 3 ALTER DATABASE MOUNT; 4 RESTORE DATABASE; 5 RECOVER DATABASE; # recovers through log 119 6 ALTER DATABASE OPEN RESESTLOGS; 7 物理备份在各种失败中应用 介质失败 块腐败 数据灾难 误操作介质失败 控制文件 数据文件 索引文件 临时文件 回滚段 Online Redo log Archive log控制文件 一个失败 简单复制拷贝或者注释掉。 全部失败

16、 最好以SQL方式重新创建,但是需要重新同步控制文件。没有创建脚本,从备份中恢复控制文件。 restore controle file from autobackup;Online Redo Logfile 已归档的 Online Redo logfile 简单drop或clear 未归档的非Current Online Redo logfile 简单drop或clear,要求立即全备 Current Redo Logfile 要执行非完全恢复,意味着丢数据 丢失数据量,取决于redo log大小.Archive Log 丢失一个或者多个归档日志。 已经备份过,可以忽略 没有备份过,之前全库备

17、份将失效(或者全库备份不能恢复到当前时间)如果数据库正常,立即发起一次全备如果数据库异常,数据库只能恢复到归档日志丢失前时间,意味着数据丢失。案例、恢复丢失未归档的联机重做日志 由于电源故障,使部分硬盘损坏。当硬盘修复以后,发现online redo log文件系统丢失,还丢失了其他一些数据文件。 拥有一份全备份和相应的归档日志,归档日志可能没有完全被备份。 Select sequence from v$archive_log; Restore database; Recover database until sequence thread 1; Shutdown immediate Copy

18、 controlfile Startup mount; Alter database open resetlogs;系统表空间 Restore tablespace system; Recover tablespace system; Alter database open;案例、恢复系统表空间 Rman target / rman startup force mount; restore tablespace system; recover tablespace system; sql alter database open;临时表空间 Simply Drop it数据文件 Alter da

19、tabase datafile offline; Restore datafile Recover datafile Alter database datafile online;案例、文件系统丢失导致恢复数据表空间恢复(archivelog) Rman target / Sql alter tablespace tbs1 offline; sql alter tablespace tbs2 offline; restore tablespace tbs1; restore tablespace tbs2; recover tablespace tbs1; recover tablespace

20、 tbs2; sql alter tablespace tbs1 online; sql alter tablespace tbs2 online; 索引文件 Restore and Recover OR recreate tablespace and recreate index数据块腐败数据块腐败类型 由于存储等原因引起的块损坏 由于Oracle Bug引起的块腐败块一级恢复 从Oracle 9i开始,Oracle提供了块一级的恢复,极大的提高了系统快速恢复能力。 Blockrecover datafile 19 block 44; Blockrecover database 19 blo

21、ck 44,66,127坏块ORA-1578 当一个块被读入到数据库高速缓冲区的时候,通过检查块的封装信息(block wrapper information )来确定该块是否有效。这个检查包括校验操作系统传递给oracle的块是否就是所请求的块,存储在块头的信息是否和存储在块尾中的信息是一致的。 坏块ORA-1578 从磁盘读取数据块的时候,假如发现该信息的不一致性,那么这个块就被认为是个坏块,升起一个:ORA-1578错误:Oracle data block corrupted (file # %s, block # %s )。 file是oracle数据文件的文件号 block是在这个数

22、据文件中的块号 坏块对象 根据file#,block#查找坏快所属对象。 SELECT TABLESPACE_NAME,SEGMENT_NAME, SEGMENT_TYPE, OWNER FROM DBA_EXTENTS WHERE FILE_ID = AND BETWEEN BLOCK_ID AND BLOCK_ID + BLOCKS - 1; 是文件号 是块号。坏块校验 数据库处于OPEN状态下可以使用命令 Analyze table/index .validate structure 用来分析扫描每一个块,遇到任何潜在的坏块则作出一个错误报告。CASCADE 选项,检查所有相关的索引,在

23、数据块和索引行之间进行一对一的校验。DBV校验 DB Verify 是一个工具,用来扫描数据文件的每一个块,并产生一个关于潜在坏块的报告。DB Verify 执行基本的块检查步骤,但是它不提供数据和索引行的1对1校验的能力。DB Verify可以在数据库CLOSE状态下运行。 Export会读取分配给每个表的块,报告任何遇到的坏块。 使用命令:dbv file=/dev/roraxx blocksize=8192DBV校验D:oracleoradataora8dbv file=tools01.dbf blocksize=8192DBVERIFY: Release 8.1.7.0.0 - Pro

24、duction on Tue Dec 14 09:24:07 2004(c) Copyright 2000 Oracle Corporation. All rights reserved.DBVERIFY - Verification starting : FILE = tools01.dbfPage 5526 is marked corrupt*Corrupt block relative dba: 0 x01401596 (file 5, block 5526)Bad header found during dbv:Data in bad block - type: 6 format: 2

25、 rdba: 0 x0140159a last change scn: 0 x0000.000501bc seq: 0 x1 flg: 0 x02 consistency value in tail: 0 x01bc0601 check value in block header: 0 x0, block checksum disabled spare1: 0 x0, spare2: 0 x0, spare3: 0 x0*DBVERIFY - Verification completeTotal Pages Examined : 7656Total Pages Processed (Data)

26、 : 2129Total Pages Failing (Data) : 0Total Pages Processed (Index): 98Total Pages Failing (Index): 0Total Pages Processed (Other): 99Total Pages Empty : 5329Total Pages Marked Corrupt : 1Total Pages Influx : 0坏块在索引上 对象是个索引且不是数据字典的一部分,基表中不包含任何坏块,那么您能简单地删除和重建索引就可以了 查出索引建立在那张基表上:SELECT table_owner, tab

27、le_nameFROM dba_indexes WHERE owner= AND index_name= 坏块对象 如果坏块在数据字典上,系统必须做恢复。 坏快在用户表上,不影响整个系统,需要对表进行恢复 如果这个对象是一个回滚段,备份中恢复数据库 假如段的类型是TEMPORARY,那么块损坏不影响任何永久对象 ,假如发生问题的表空间是个临时表空间,重建临时表空间。然后,删除发生问题的表空间。假如发生问题的表空间不是一个临时表空间,那么这个块不应该再次被读取,应该在下次读取这个块的时候,重新格式化该块 独立对象恢复 表格失败或者其他对象失败,需要进行表空间级的不完全恢复,物理备份将会非常麻烦,

28、并且需要额外的存储或者主机来恢复。 物理备份并没有任何对象的概念。所以为了应付对象失败,最好建立其他的备份恢复方法。 Exp/imp是最为常用的方法,遗憾的是可能无法获得全部数据。 其他方法:Logminer,Flashback以及其他从表中抢救数据 从包含有坏块的表中提取数据有很多的方法。下面详细介绍了最适合的方法。这些方法的目的是从能访问的表块中提取尽可能的数据 从表中抢救数据 10231事件,跳过坏块读取数据alter session set events 10231 trace name context forever, level 10 Create table salvage_ta

29、ble as select * from bad_table;使用ROWID案例 在Oracle8/8i中使用ROWID 范围扫描的一个例子 :SQL select * from scott.partitionexample; ORA-01578: ORACLE data block corrupted (file # 7, block # 12698) ORA-01110: data file 7: /oracle1/oradata/V816/oradata/V816/users01.dbf = 7 , = 12698 , = 7 使用ROWID案例第一步:找出坏块所在对象SQL SELEC

30、T tablespace_name, segment_type, owner, segment_name FROM dba_extents WHERE file_id =7 AND 12698 between block_id AND block_id + blocks - 1 ; TABLESPACE_NAME SEGMENT_TYPE OWNER SEGMENT_NAME - - - - USERS TABLE PARTITION SCOTT PARTITIONEXAMPLE 使用ROWID案例找出object_id SQL SELECT data_object_id FROM dba_o

31、bjects WHERE object_name = PARTITIONEXAMPLE and owner=SCOTT AND subobject_name= PARTEX2; DATA_OBJECT_ID - 88145 使用ROWID案例 找出相映的ROWID 坏块第一行的ROWID- SQL select dbms_rowid.rowid_create(1, 88145,7,12698,0) from dual; DBMS_ROWID.ROWID_C - AAAVhRAAHAAADGaAAA 坏块号+1第一行的ROWID- SQL select dbms_rowid.rowid_crea

32、te(1, 88145,7,12699,0) from dual; DBMS_ROWID.ROWID_C - AAAVhRAAHAAADGbAAA 使用ROWID案例 数据抢救CREATE TABLE salvage_table AS SELECT /*+ ROWID(A) */ * FROM scott.partitionexample A WHERE rowid = AAAVhRAAHAAADGbAAA ; 使用ROWID案例 坏块里的数据,根据索引抢救部分坏块数据。SQL SELECT /*+ INDEX_FFS(A PARTEXAM) */ column1 FROM scott.par

33、titionexample A WHERE rowid = AAAVhRAAHAAADGaAAA AND rowid AAAVhRAAHAAADGbAAA ; 表 格 Incompelete recover Event 10231 and Rowid fetch But will lose one block rows Blockrecover误操作误操作的考虑 有近40%的灾难是由于误操作造成的,并且有逐年上升的趋势。 容灾系统对于误操作完全无能为力。 传统的备份和恢复对误操作的策略也比较有限。 由于误操作的频繁和重大危害,必须把误操作的恢复作为备份系统的一个重点建设目标。索引被DROP R

34、ecreate it表格被truncate 10g全库闪回 Export/import 不完全恢复DML操作失误 闪回查询 Logminer挖掘 逻辑恢复imp/impdp 不完全恢复表空间误删除 不完全恢复 Export/import其他误操作 文件被删除,文件误修改,一致性校验失效等等误操作,依据操作的不同性质采用不同的方法进行恢复。Oracle10g闪回技术Flashback 功能Flashback QueriesFlashback TableFlashback DropFlashback Database闪回查询 闪回查询用途: 误操作修补数据 查看表格数据变化CREATE TABLE

35、 changes_today AS SELECT * FROM employees MINUS SELECT * FROM employees AS OF TIMESTAMP TRUNC(SYSDATE);获取新增加数据SQLSELECT * FROM department AS OF TIMESTAMP TO_TIMESTAMP(03-MAY-2005 09:30:00); 闪回查询SQL使用闪回查询设置配置参数:UNDO_MANAGEMENT = AUTOUNDO_RETENTION = 定义了可以闪回时间,缺省15分钟。合理规划回滚段表空间大小闪回查询设置 确保未过期数据不被覆盖,需要使

36、用GUARANTEE之句强制限制 查询dba_tablespaces确认 ALTER TABLESPACE RETENTION GUARANTEE;闪回查询限制 Sys用户不支持SESSION级别 闪回查询支持最低粒度为3秒,系统每3秒记录一次SCN变化 不能闪回表格最后一次DDL之前Flashback FeaturesFlashback QueriesFlashback TableFlashback DropFlashback Database表格闪回 恢复表格到误操作之前,在线快速完成数据修复 避免了复杂的不完全恢复表格闪回 恢复表格到指定的时间或者SCN之前 自动恢复所有关联对象: Au

37、tomatically restores all dependent objects 索引自动闪回 统计信息不会闪回表格闪回使用 关键怎么查找误操作发生的时间 可以使用闪回行记录变化确定SCN 可以使用LOGMNR日志挖掘确定SCN 闪回查询SQL Triggers are not enabled by default during a flashback operationFLASHBACK TABLE t1 TO TIMESTAMP TO_TIMESTAMP(2005-05-01 12:05:00) ENABLE TRIGGERS;FLASHBACK TABLE t1 TO SCN 123

38、45;表格闪回步骤闪回步骤:1 Enable row movementFLASHBACK TABLE ef TO TIMESTAMP TO_TIMESTAMP();2、执行闪回ALTER TABLE ef ENABLE ROW MOVEMENT;表格闪回限制 不能闪回最后一次DDL之前 SYS用户表格不能闪回 表格上事物未结束前,不能闪回 表格闪回利用UNDO表格控件数据,确保UNDO表格控件保留时间足够长Flashback FeaturesFlashback QueriesFlashback TableFlashback DropFlashback Database闪回DROP 在10G以后

39、,DROP对象放在垃圾箱里 这使DROP表格闪回恢复,变得异常简单 在垃圾箱里表格没重新命名,并且控件不被释放 闪回表格命令FLASHBACK TABLE . TO BEFORE DROP 一些限制: SYS,SYSTEM用户表格不适用 数据字典表空间不适用 SYSTEM表空间不适用闪回DROP 被DROP表格可以被闪回 TRUNCATE表格不能被闪回 DROP闪回不适用UNDO表空间 牺牲用户表空间的空间作为代价清理垃圾箱Purged objects cannot be flashed back (recovered) Objects are purged using the PURGE s

40、tatement or automatically by Oracle when there is space pressure in their tablespaceOracle will purge dropped tables in preference to extending autoextensible files Dependent objects (indexes) are purged before tables Purging is performed on a first-in, first-out basisDropping a tablespace, or a use

41、r does not place any objects in the bin Purges the bin of any objects belonging to that tablespace or userRecycle bin feature can be turned offALTER SYSTEM SET “_recyclebin” = FALSE SCOPE = BOTH;dba_recyclebin 视图记录了所有被DROP对象(未清理前)SQL desc dba_recyclebin Name Null? Type - - - OWNER NOT NULL VARCHAR2(

42、30) OBJECT_NAME NOT NULL VARCHAR2(30) ORIGINAL_NAME VARCHAR2(32) OPERATION VARCHAR2(9) TYPE VARCHAR2(25) TS_NAME VARCHAR2(30) CREATETIME VARCHAR2(19) DROPTIME VARCHAR2(19) DROPSCN NUMBER PARTITION_NAME VARCHAR2(32) CAN_UNDROP VARCHAR2(3) CAN_PURGE VARCHAR2(3) RELATED NOT NULL NUMBER BASE_OBJECT NOT

43、NULL NUMBER PURGE_OBJECT NOT NULL NUMBER SPACE NUMBERNO/YESNO/YES查询垃圾箱 查询dba_recyclebin ,user_recyclebin SHOW RECYCLEBIN 检查放在垃圾箱里表格的数据内容SELECT * FROM “BIN$xyWe0+q+SniItJ0pn/u54A=$0” AS OF .;清理垃圾箱对象 清理垃圾箱语句PURGE DBA_RECYCLEBIN; Users with SYSDBA privilege, can purge the entire recycle binPURGE RECYCL

44、EBIN;PURGE TABLE emp;PURGE TABLE “BIN$xyWe0+q+SniItJ0pn/u54A=$0”;PURGE TABLESPACE user1;PURGE INDEX BIN$FTX34MN88J7=$0”;PURGE TABLESPACE user1 USER fred;Flashback FeaturesFlashback QueriesFlashback TableFlashback DropFlashback DatabaseFlashback DatabaseFLASHBACK DATABASE TO BEFORE SCN .FLASHBACK DAT

45、ABASE TO SCN .FLASHBACK DATABASE TO BEFORE TIMESTAMP .FLASHBACK DATABASE TO TIMESTAMP .整库闪回到之前某个时间点整库闪回到之前某个时间点 相当于做了一个相当于做了一个RMAN 不完全恢复不完全恢复 数据库必须处于归档模式,及数据库必须在数据库必须处于归档模式,及数据库必须在MOUNT状态状态 Needs SYSDBA privilegeFlashback at Tablespace Level关闭部分不需要的表空间闪回 减少闪回日志产生 查看v$tablespace.flashback_on字段ALTER T

46、ABLESPACE expt FLASHBACK OFF;ALTER TABLESPACE users FLASHBACK ON*ERROR at line 1:ORA-01126: database must be mounted in this instance and not open in any instanceFlashback LoggingRecommended to store both flashback and archived logs in a common recovery area NOLOGGING operations are recorded in the

47、flashback logsDatabaseFlashback logsArchived logsLGWRRVWRRVWR = Recovery Writer设置闪回数据库Configure the recovery area by setting the following dynamic parametersDB_RECOVERY_FILE_DEST Oracle writes flashbacks logs to the specified recovery area (destination) Default value is ORACLE_BASEflash_recovery_are

48、aDB_RECOVERY_FILE_DEST_SIZE Default size is 2GB Both of the above parameters must be setDB_FLASHBACK_RETENTION_TARGET (default 1440 minutes) Oracle will try to keep enough flashback information to rollback through 1440 minutes COMPATIBILITY needs to be 10.0 + (database version can not go down once s

49、et to 10.0)启动闪回数据库1. Connect using sys AS SYSDBA 2. Find the current SCN of the database in case you need to perform a subsequent flashback to the current stateSELECT current_scn FROM v$database;3.SHUTDOWN4.STARTUP MOUNT EXCLUSIVE5.ALTER DATABASE FLASHBACK ON;6.ALTER DATABASE OPEN;Flashback Logs Fla

50、shback data requires a lot of space On Windows, logs are 4MB on a quiet system with names like O1_MF_0B87CPH6_.FLB Size and frequency of generation depends on locality of database changes in a given interval Any change within a block means the whole block is logged On Windows, logs are actually stor

51、ed ind:oracleflash_recovery_areaflashbackFlashback MechanismFlashback information jumps the database back in timeArchive log data is then applied to perform a point in time recovery Example : FLASHBACK DATABASE TO SCN 53297DatabaseSCN 69633Flashbacklog 23Flashbacklog 22Flashbacklog 21Flashbacklog 20

52、67234629835561750614Archive stream5329750617Recovery Area Storage 恢复区域用于存储闪回日志,备份集 在保留时间内需要配置足够的存储空间 如果空间使用率达到85%,alert日志会发出警告信息 如果空间使用率达到100%,Oracle自动删除选择最老闪回日志 闪回日志不能通过手工删除,如果空间满需要调整保留空间大小或者保留时间闪回视图SELECT name ,space_limit ,space_used ,reclaimable_space reclaim ,number_of_files files FROM v$recove

53、ry_file_dest;NAME SPACE_LIMIT SPACE_USED RECLAIM FILES- - - - -D:oracleflash_recovery_area 2147483648 364353536 0 86 v$recovery_file_dest显示闪回空间使用情况显示闪回空间使用情况闪回视图SELECT TO_CHAR(begin_time,ddth hh24:mi) start_time ,TO_CHAR(end_time,ddth hh24:mi) end_time ,db_data ,redo_data ,flashback_data fl_data ,es

54、timated_flashback_size est_fl_sizeFROM v$flashback_database_stat;START_TIME END_TIME DB_DATA REDO_DATA FL_DATA EST_FL_SIZE- - - - - -15th 15:59 15th 16:48 20234240 9678336 12361728 015th 14:59 15th 15:59 19652608 7720960 10272768 39849984015th 13:59 15th 14:59 21643264 8264704 12541952 44740608015th

55、 12:59 15th 13:59 20897792 7571968 12435456 51683328015th 11:52 15th 12:59 46702592 32384000 33333248 712679424 v$flashback_database_stat显示每小时日志量显示每小时日志量 estimated_flashback_size is the value found in v$flashback_database_log at the end of the time interval闪回视图SELECT name ,TO_CHAR(first_time,ddth hh

56、24:mi:ss) first_time ,bytesFROM v$flashback_database_logfile;NAME FIRST_TIME BYTES- - -D:ORACLEFLASH_RECOVERY_AREAORAC 15th 14:42:30 3981312FLASHBACKO1_MF_0B7W0MGC_.FLBD:ORACLEFLASH_RECOVERY_AREAORAC 15th 15:01:06 3981312FLASHBACKO1_MF_0B7W0WX4_.FLBD:ORACLEFLASH_RECOVERY_AREAORAC 15th 15:27:31 39813

57、12FLASHBACKO1_MF_0B7XLT9Z_.FLB v$flashback_database_logfile 查看闪回日志数据库闪回小结 介质失败,不能通过闪回恢复 数据库结构发生变化,如数据文件strink,DROP表空间不能闪回进行恢复 数据库RESETLOGS OPEN后,不能使用闪回进行恢复闪回和只读打开 有时候需要反复闪回数据库以获取准确数据 可以使用只读模式来完成此操作 如: 1、shutdown 2、startup mount 3、flashback database to scn; 4、alter database open read only;-进行数据校验如果需要

58、重复以上操作逻辑备份备份方法 导入导出导入导出exp/impexp/imp备份条件:数据库打开,导入与导出的数据库表空间尽可备份条件:数据库打开,导入与导出的数据库表空间尽可能一致,只能同版本导入或低版本导入到高版本数据库能一致,只能同版本导入或低版本导入到高版本数据库 数据泵数据泵expdp/impdpexpdp/impdp备份条件:数据库打开,导入与导出的数据库表空间尽可备份条件:数据库打开,导入与导出的数据库表空间尽可能一致,只能同版本导入或低版本导入到高版本数据库,能一致,只能同版本导入或低版本导入到高版本数据库,效率高但只能在效率高但只能在10g10g以上的版本上使用以上的版本上使用

59、1. 1. 目录目录/ORACLE_HOME/bin/ORACLE_HOME/bin下,一个二进制系统文件下,一个二进制系统文件. .2. EXP2. EXP有三种模式:有三种模式:用户模式:导出用户所有对象以及对象中的数据;用户模式:导出用户所有对象以及对象中的数据;表模式:导出用户所有表或者指定的表;表模式:导出用户所有表或者指定的表;表空间:导出表空间所有内容,可能包含多个用户的对象;表空间:导出表空间所有内容,可能包含多个用户的对象;整个数据库:整个数据库: 导出数据库中所有对象。导出数据库中所有对象。3 3. . 导出工具导出工具expexp非交互式命令导出用户的例子:非交互式命令导

60、出用户的例子: $exp scott/tiger tables=(emp,dept)$exp scott/tiger tables=(emp,dept)owner=scottowner=scott file=/directory/scott.dmpfile=/directory/scott.dmp 导出工具export 3 3. . 导出工具导出工具expexp非交互式命令行导出表格的例子非交互式命令行导出表格的例子 $exp scott/tiger tables=(emp,dept) $exp scott/tiger tables=(emp,dept) file=/directory/scott.d

温馨提示

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

评论

0/150

提交评论