数据库灾备技术方案_第1页
数据库灾备技术方案_第2页
数据库灾备技术方案_第3页
数据库灾备技术方案_第4页
数据库灾备技术方案_第5页
已阅读5页,还剩184页未读 继续免费阅读

下载本文档

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

文档简介

1、数据库灾备技术方案010203目 录ContentsRMAN备份恢复介绍闪回技术详解备份恢复基础知识0405数据库启动过程揭秘06灾难场景案例分析主流容灾体系对比说明01传统数据库的分类DB-Engines 发布了 2018 年 4 月份的数据库排名,排名前 三的依然是 Oracle、MySQL 和 Microsoft SQL Server 。前 20 名的数据库中,本月 排名出现上升的有 Elasticsearch ,从上个月的 第 9 名上升至第 8 名。 MariaDB 数据库从上个月的 15 上升到 14 名。01为什么需要备份?1笔记本系统重装之历史邮件(计划内)2备份的必要性3备份

2、的时效性01备份是什么?Backupand Recovery Users Guide (e10642)A backup is a copy of data of a database that you can use to reconstruct data.备份是你能够重建数据或数据库的数据复制基于多种目的的数据保护 基于不同需求的数据转换01恢复是什么?恢复是当意外发生或者有其他需要时, 将已经备份的数据信息还原到数据库中。01什么是备份恢复目的?备份恢复策略的目的: 保护数据避免数据丢失当数据丢失后重建数据库。01我们的责任?Devise设计 Implement 实施 Manage 管理备

3、份恢复策略(strategy)01备份的应用数据的保存设计到创建数据库备份的长期存储机制数据转换当涉及数据从一个数据库迁移到另一个库或者主机01为什么需要DBA介入并进行数据恢复?1234硬件故障和系统故障 误操作病毒软件故障5自然灾害需要灾难恢复策略来保护对抗灾难数据丢失01介质损坏?磁盘不能进行正常的IO操作任何数据库文件对于介质损坏都是脆弱的典型原因可能的解决方法磁盘驱动器故障1. 从备份中还原受影响的文件。2. 如果需要,通知数据库关于新 文件的位置。磁盘控制器故障3. 如果需要,通过应用重做信息来 恢复文件。删除或损坏了数据库文件01语句故障典型问题可能的解决方法尝试表中插入无效数据

4、与业务用户合作来验证并更正数据尝试执行操作,但权限不足提供适当的对象或系统权限尝试分配空间失败启用可恢复的空间分配增加所有者限额增加表空间的空间应用程序中存在逻辑错误与开发人员合作来更正程序错误01用户进程故障典型问题可能的解决方法用户执行了异常断开连接操作通常不需要DBA 执行任何操作就可解决用户进程故障。实例后台进程会回退未提交的更改并解除锁定。观察变化趋势用户会话已异常终止用户遇到了程序错误并终止了会话01 网络故障典型问题可能的解决方法监听程序失败配置备份监听程序和连接时故障 转移网络接口卡 (NIC) 故障配置多个网卡网络连接失败配置备份网络连接01实例故障典型问题可能的解决方法断电

5、使用“startup”命令重新启动实 例。硬件故障从实例故障进行恢复是自动执行的,其中包括前滚重做日志中的更改和一个后台进程出现故障回紧急关闭过程退任何未提交的事务处理。使用预警日志、跟踪文件调查出现错误的原因。01误操作SQLDROP TABLE T_T1;SQLTRUNCATE TABLE T_T1;SQLDELETE FROM T_T1;SQLCOMMIT;SQLUPDATE T_T1 SET TNAME=B;SQLCOMMIT;趋势:在导致数据库停机时间的原因 占比中越来越大01误操作的影响localized 局部的Demo:从employee表中误删除了一个人的影响widesprea

6、d 广泛的Demo:一批自动化job删除了一个公司的订单01误操作的后续目标:尽可能的降低数据库的停机时间解决措施:用户培训合理管理用户授权(能够规避大多数的用户误操作)需要进行操作复核需要进行操作审计定制和实施合理的备份策略回退或使用闪回查询进行恢复从回收站中恢复01程序错误Application Errors应用程序发生故障,导致块损坏。当物理损坏,数据库不能认到块 则称作介质损坏。 现象:checksum 无效 块包含的都是0块头和块尾不匹配 解决办法:当块损坏量不大,可以通过块介质恢复(block media recovery)进行修复01病毒导致的故障勒索病毒分析勒索软件 为什么盛行

7、通过了三级等保后 为什么没防住1、杀毒软件能防御住已知的病毒(依靠特征库-黑名单)2、杀软件防御未知恶意软件能力有限(依靠引擎与算法)3、勒索病毒难防护,有针对性,无明显破坏特征4、其它网络安全产品主要在边界防御、网络安全检测5、缺乏真正的数据安全防御产品1、门槛低(RAAS)2、攻击成本低3、难防护,传统手段无效,攻击成功率高4、高收益5、缺乏法律规则6、虚拟市场货币监管失控(比特币)01病毒导致的故障01数据库勒索案例分析2018年2月24日消息,据微博网友爆料,国内一家省级儿童医院今晨出现系统瘫痪状况, 患者无法顺利就医,正值儿童流感高发季, 医院大厅人满为患。据悉该院多台服务器感 染G

8、lobeImposter勒索病毒,数据库文件被 病毒加密破坏,黑客要求院方必须在六小时 内为每台中招机器支付1个比特币赎金,约合人民币66000余元。GlobeImposter是目前流行的一类勒索病 毒,它会加密磁盘文件并篡改后缀名为.Techno、.DOC、.CHAK、.FREEMAN、. TRUE等形式。由于其采用高强度非对称 加密方式,受害者在没有私钥的情况下 无法恢复文件,如需恢复重要资料只能 被迫支付赎金。自从去年WannaCry爆发以后,勒索病毒的 攻击重心已逐渐由个人电脑用户转向企业 服务器,尤其是以弱口令爆破远程登录服 务器、再植入勒索病毒的攻击方式最为常 见。01数据库注入勒

9、索案例分析PL SQL Developer版本是11.0.6中文绿色注册版(免 Oracle11g客户端)存在问题的PL SQL Developer解压后主目录的 AfterConnect.SQL文件存在异常。官方的PL SQL Developer下AfterConnect.SQL是空文件,而异常的 AfterConnect.SQL中存在恶意存储过程和触发器总共 35KB左右。打开文件后可以看到包含4个存储过程和3个触 发器。存储过程分别是:DBMS_SUPPORT_INTERNALDBMS_SYSTEM_INTERNALDBMS_STANDARD_FUN9DBMS_CORE_INTERNAL

10、触发器则是:数据库启动后触发器DBMS_SUPPORT_INTERNAL数据库登陆触发器DBMS_SYSTEM_INTERNAL和 DBMS_CORE_INTERNAL01美创防勒索解决方案Q1Q4Q3Q2文档防勒索哑终端防勒索勒索底线防御数据中心防勒索美创防勒索解决方案01防勒索的底线防御之道物理机/虚拟机备份一体机CDP灾备一体机数据库复制(物理-逻辑)双机双柜数据库操作系统数据库数据库云备份云容灾数据库数据库01灾备解决方案Storwize3V500As v hyper vi sor )StorwizeV3500Storwize 3V500C D P01备份恢复基础01备份需要什么?01

11、备份需要什么?硬件101备份需要什么?硬件201备份需要什么?软件101备份需要什么?软件201 RTO从低到高分为5个级别级别恢复时间要求1级2小时内恢复2级4小时内恢复3级8小时内恢复4级1天内恢复5级可恢复,但无时间要求01RPO从低到高分为5个级别级别可容忍丢失的数据1级无数据丢失2级30分钟内3级4小时内4级8小时内5级一天之内的数据01RPO VS RTO01备份的种类?逻辑物理万变不离其宗01物理备份?physical backups are copies of the physical files used in storing and recovering a databas

12、e.物理备份是用于恢复数据库的物理文件的复件。物理备份将以上这些文件复制储存到另一个目录, 可以是磁盘或者脱机储存。01逻辑备份是什么?逻辑备份通过对数据库的逻辑数据比如表,存储过程, 用户等数据写入二进制文件,与数据库内部文件的物理 位置无关。01 逻辑备份策略逻辑备份作为一种数据库逻辑对象的拷贝,在针对数据库对 象发生意外丢失的情况下,恢复是非常便捷的。我们可以通 过备份整个数据库,或仅备份部分重要数据,从而达到备份 实现。数据库规模数据的更新和改变频繁程度;备份时间点01两者的关系?总的来说物理备份就是一种数据库物理文件级别的备份。物理备份是任何有效的备份恢复策略的基础。逻辑备份就是对数

13、据库对象(如用户、表、存储过程等)级别的导入导出逻辑备份的备份集的可移植性比较强。对象级别的数据进行恢复比较容易。备份和恢复的效率比较低。恢复的数据只能是备份点的数据。也就是说会发生数据丢失。所以我们更多的可以采用以物理备份为主,逻辑备份为辅的策略进行数据库的备份。01两者的区别物理备份:应对介质损坏,表空间或者文件级别的损坏 逻辑备份:应对表格级别的误操作,误删除等01物理备份细分?脱机物理备份需要数据文件/redo log/控制文件/参数文件(可选)数据库必须为正常关闭的情况下执行联机物理备份数据库为归档模式业务是否可以停止数据库是否为归档模式01脱机物理备份(冷备)的步骤?获取备份文件的

14、目录和文件名 dba_data_files/V$CONTROLFILE/v$logfile正常关闭数据库 SQLSHUTDOWN IMMEDIATE执行文件备份 cp file1 file2启动数据库 SQLSTARTUP优点:操作简单, 没有很高的门槛缺点:数据库需要关闭数据文件多时备份时间太久/备 份集太大只能恢复到备份的时间点01脱机物理备份的恢复步骤?1正常关闭数据库 SQLSHUTDOWN IMMEDIATE2.将备份出的文件恢复到原定的相关目录 cp file1 file24.启动数据库 SQLSTARTUP01联机物理备份前提检查当前数据库处于归档/非归档模式 SQLARCHIV

15、E LOG LIST修改为归档模式SQLALTER SYSTEM SETLOG_ARCHIVE_DEST_1=location=/ARCH1 SCOPE=BOTH;SQLSHUTDOWN IMMEDIATE SQLSTARTUP MOUNT;SQLALTER DATABASE ARCHIVELOG; SQLALTER DATABASE OPEN;SQLALTER SYSTEM SWITCH LOGFILE; #切换redo,查看对应目录 是否有归档生成01联机物理备份例子在线备份用户表空间连接数据库$sqlplus system/oracleSID获取需要备份的users表空间的数据文件信息

16、SQLSELECT FILE_NAME FROM DBA_DATA_FILES WHERE TABLESPACE_NAME=USERS;设置开始在线备份标记SQLALTER TABLESPACE USERS BEGIN BACKUP;备份表空间对应的数据文件SQLhost cp /app/oracle/oradata/TEST1/USERS.DBF/app/oracle/orabak/TEST1/online/USERS.DBF 5.设置停止在线备份标记SQLALTER TABLESPACE USERS END BACKUP;01联机物理备份恢复例子当数据库提示该文件的磁盘有问题或者文件被误删

17、除,数据库 不能打开,提示需要介质恢复时,进行覆盖。01逻辑备份的方法?1.Export小工具 2.DATA PUMP 数据泵10g 之前使用exp/imp工具10g开始除了exp/imp,还多了expdp/impdp01导出备份的模式?表模式:导出用户所有表或者指定的表用户模式:导出用户是有对象以及对象中的数据或者 只导出表结构表空间模式:按表空间名导出数据对象全库模式:导出数据库中所有对象01导入备份导入是导出的逆向工程。导入先读取导出的二进制文件,运行文件,恢复对象用户数 据。当全库导入时,所有对象都会自动创建,例如表空间,数据文件, 用户。一般考虑到数据库中的物理规划,都会提前创建。0

18、1导出备份的表模式操作步骤:exp system/passwdTEST1 TABLES=(vivien.laptop,vivien.disk) file=/app/oracle/orabak/exp/EXP_vivien_tab.dmp“ log=“/app/oracle/orabak/exp/EXP_vivien_tab.log“01导出备份的用户模式操作步骤:exp system/passwdTEST1 owner=vivienfile=/app/oracle/orabak/exp/EXP_vivien.dmp“ log=“/app/oracle/orabak/exp/EXP_vivien

19、.log“01导出备份的表空间模式操作步骤:exp system/passwdTEST1 tablespace=usersfile=/app/oracle/orabak/exp/EXP_users_tbs.dmp“ log=“/app/oracle/orabak/exp/EXP_users_tbs.log“实际工作中,并很少使用 这种模式.01导出备份的全库模式操作步骤:exp system/passwdTEST1 FULL=Yfile=/app/oracle/orabak/exp/EXP_db_all.dmp“ log=“/app/oracle/orabak/exp/EXP_db_all.l

20、og“01导入备份的表模式操作步骤:imp system/passwdTEST1 FROMUSER=VIVIEN TOUSER=VIVIENTABLES=(laptop,disk) tablespace=users commit=yfile=/app/oracle/orabak/exp/EXP_vivien_tab.dmp log=“/app/oracle/orabak/exp/IMP_vivien_tab.log”01导入备份的用户模式操作步骤:imp system/passwdTEST1 FROMUSER=VIVIEN TOUSER=VIVIENfile=/app/oracle/oraba

21、k/exp/EXP_vivien.dmp“ log=“/app/oracle/orabak/exp/IMP_vivien.log“01导入备份的表空间模式操作步骤:imp system/passwdTEST1 FROMUSER=VIVIEN TOUSER=VIVIENfile=/app/oracle/orabak/exp/EXP_vivien.dmp“ log=“/app/oracle/orabak/exp/IMP_vivien.log“01导入备份的全库模式操作步骤:imp system/passwdTEST1 FULL=Yfile=/app/oracle/orabak/exp/EXP_db

22、_all.dmp“ log=“/app/oracle/orabak/exp/IMP_db_all.log“01Exp参数详解exp -help参数描述Userid执行导出的账户的用户名和口令。Buffer用于获取数据行的缓冲区尺寸,默认值随系统而定,通常 设定一个高值(64000)。File导出转储文件的名字log一个要写导出文件的文件名。Owner导出数据库账户的清单,可以执行这些账户的User导出。Tables导出表的清单,可以执行这些表的Table导出。Parfile传递给Export的一个参数文件名。Filesize一个导出转储文件的最大尺寸,如果File条目中列出多个 文件,将根据F

23、ilesize设置值导出这些文件.01exp参数优化传统路径方式: 【默认导出方式】EXP采用SQL语句的方式把要导出的表的数据获取,然后通过网络将数 据传输到客户端,在客户端上生成转储文件。SQL语句的执行,就需要 shared_pool中生成执行计划,数据缓存到buffer中。直接路径方式:EXP不采用SQL的方式,直接绕过buffer cache获得数据块。将数据块的 数据抽出来直接传递给客户端。只需要在导出时添加Direct=Y 参数。速 度快,当含LOB时还是以传统方式导出。direct=n datafile-sga-pga-dump direct=y datafile-pga-du

24、mp01exp参数优化BUFFER=409600000指定缓冲区的大小,参数依赖于操作系统,用户可以根据导出数据块 的性质,设置较大的数值FEEDBACK=10000每隔一定的行数显示备份进展RECORDLENGTH=64000文件记录的最大长度,以字节为单位,即导出I/O的buffer,最大为 65535。这个参数决定了在没写入导出文件中缓存中堆积数据的多少。 如果没有设置这个参数,取决于操作系统平台,在大多数平台的默认 值是1024字节。01交互式方式exp/ 然后按提示输入所需要的参数命令行方式exp user/pwddbname file=/oracle/test.dmp full=y

25、/ 命令行中输入所需的参数参数文件方式exp parfile=username.par/在参数文件中输入所需的参数参数文件 username.par 内容: userid=username/userpassword buffer=8192000 compress=n grants=y file=/oracle/test.dmp full=y01Expdp 参数详解expdp-help01数据泵与export/import之间的差异数据泵简单:命令简单,复用老的exp命令高效:导出转化速度更快,给予LOB优化明显 功能比较exp更加丰富高压缩比灵活:可以各种调整导入导出用户切换,表空间切换等ex

26、p/imp可以远程客户端导出 兼容数据库版本更多01数据泵导出例子前期准备:1.创建目录SQLCREATE DIRECTORY EXPDP_DIR AS/app/oracle/orabak/expdp; 2.授权SQLGRANT READ,WRITE ON DIRECTORY EXPDP_DIR TO USER_1;3.导出expdp system/oracle directory=expdp_dir TABLES=vivien.tab1 DUMPFILE=tab1_%U.dmpPARALLEL=8JOB_NAME=exp_tab1logfile=exp_tab1.log01数据泵导出日志解读

27、Master table 记录了导出对象的ddl 导出的进度等信息 异常中断,数据库不会删除01impdp导入例子前期准备:1.创建目录SQLCREATE DIRECTORY IMDP_DIR AS /app/oracle/orabak/impdp; 2.授权SQLGRANT READ ON DIRECTORY EXPDP_DIR TO USER_1;3.导入impdp system/oracle directory=impdp_dir directory=IMPDP_DIR DUMPFILE=VIVIEN_T_POLICY_DX.dmptables=vivien.T_POLICY_DX re

28、map_schema=vivien:vivien102RMAN备份恢复介绍02 恢复管理器功能RMAN 为执行下列操作提供了一种灵活的方式:检测备份过程中损坏的块通过下列方式提高性能:自动并行化生成较少的重做日志限制备份的I/O 操作磁带流式处理管理备份和恢复任务02RMAN 资料库:使用控制文件RMAN 资料档案库包含的是有关目标数据库和备份及恢复操作的 元数据。RMAN 资料档案库始终存储在目标数据库的控制文件中。CONTROL_FILE_RECORD_KEEP_TIME 用于确定一个记录至少要保 留多少天才可被覆盖。控制文件可能增大。02与RMAN 连接的类型目标数据库恢复目录数据库辅助

29、数据库备用数据库重复数据库表空间定点恢复(TSPITR) 例程02V$FLASH_RECOVERY_AREA_USAGE可通过查询V$FLASH_RECOVERY_AREA_USAGE 来查看快速恢复区 磁盘空间使用情况。SQL SELECT file_type,percent_space_used AS used,percent_space_reclaimable AS reclaimable, 4 number_of_files AS number5 FROM v$flash_recovery_area_usage ; FILE_TYPE USED RECLAIMABLE FILES- -

30、 - - CONTROLFILE 0 0 0ONLINELOG 0 0 0ARCHIVELOG 69.13 0 593BACKUPPIECE 0 0 0IMAGECOPY 0 0 0FLASHBACKLOG 1.77 0 3702 设置影响RMAN 的参数数据库初始化参数CONTROL_FILE_RECORD_KEEP_TIMEDB_RECOVERY_FILE_DEST 和DB_RECOVERY_FILE_DEST_SIZE(如果使用快速 恢复区)环境变量NLS_DATE_FORMATNLS_LANG02RMAN 命令:概览02RMAN 命令RMAN BACKUP AS BACKUPSET2

31、FORMAT /BACKUP/df_%d_%s_%p.bus3 TABLESPACE hr_data;02 不使用恢复目录进行连接从本地启动RMANUNIX: $ ORACLE_SID=DB01; export ORACLE_SID$ rman target / as sysdbaWindows NT:C: set ORACLE_SID=DB01 C: rman target / as sysdba从远程启动RMANrman target sys/target_pwdDB0102其它RMAN 命令行参数将RMAN 输出写入到一个日志文件:调用RMAN 时执行命令文件:$ rman target

32、 sys/oraclelog $HOME/ORADATA/u03/rman.log appendrman target sys/oraclelog $HOME/ORADATA/u03/rman.log append $HOME/STUDENT/LABS/my_rman_script.rcv02 作业命令示例RUN 命令:RMAN RUN backup incremental level 0format /u01/db01/backup/%d_%s_%pfileperset 5(database include current controlfile);sql alter database ar

33、chive log current;02 RMAN 配置设置RMAN 预设有一些默认的配置设置使用CONFIGURE 命令可以:配置自动通道指定备份保留策略指定要创建的备份副本数将默认备份类型设置为BACKUPSET 或COPY限制备份集的大小在备份中排除表空间启用和禁用备份优化配置控制文件的自动备份02SHOW 命令显示永久配置设置使用SHOW 命令可显示:自动通道配置设置备份保留策略设置要创建的备份副本数备份集大小限制不包括在备份中的表空间备份优化状态使用SHOW ALL 命令显示所有设置:RMANSHOW ALL;02 保留策略保留策略描述哪些备份将被保留以及保留时间。有以下两种类型的保

34、留策略:恢复窗口:建立一个时间段,在该时段内必须可以进行时间点恢复冗余:建立必须保留的固定数量的备份这些策略互相排斥,并且都可以使用CONFIGURE命令进行设置。02 CONFIGURE 命令配置自动通道:通过指定恢复期实施保留策略:通过指定冗余实施保留策略:RMAN CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT /db01/BACKUP/%U;RMAN CONFIGURE RETENTION POLICY TO RECOVERY 2 WINDOW OF 7 days;RMAN CONFIGURE RETENTION POLICY TO REDUNDAN

35、CY 2;02 CONFIGURE 命令配置双重备份集:配置备份优化:使用CLEAR 选项恢复为缺省值:RMAN CONFIGURE DATAFILE BACKUP COPIES FOR 2 DEVICE TYPE disk TO 2;RMAN CONFIGURE BACKUP OPTIMIZATION ON;RMAN CONFIGURE RETENTION POLICY CLEAR; RMAN CONFIGURE CHANNEL DEVICE TYPE sbt CLEAR;02通道分配自动通道是预配置的通道,用于后续命令。要更改自动 通道分配的默认设备类型,可使用:RMAN CONFIGUR

36、E DEFAULT DEVICE TYPE TO sbt;手动分配的通道是可覆盖自动通道设置的通道。对于 以下运行块,该通道将覆盖自动通道:RMAN RUN 2 ALLOCATE CHANNEL c1 DEVICE TYPE disk;3 BACKUP DATAFILE/u01/oradata/user01.dbf;4 02自动分配通道更改缺省设备类型配置自动通道的并行性:指定备份片段大小的最大值RMAN CONFIGURE DEFAULT DEVICE TYPE TO sbt;RMAN CONFIGURE DEVICE TYPE DISK PARALLELISM 3;RMAN CONFIGU

37、RE CHANNEL DEVICE TYPE DISK 2 MAXPIECESIZE 2G;02 手动分配通道BACKUP、COPY、RESTORE 和RECOVER 命令至少需要一个通道。分配一个通道会在目标数据库上启动一个服务器进程。通道会影响并行性程度。通道可写入不同的介质类型。通道可用于施加限制。RMAN RUN 2 ALLOCATE CHANNEL c1 TYPE disk3 FORMAT = /db01/BACKUP/usr0520.bak;4 BACKUP DATAFILE /db01/ORADATA/users01.dbf;02并行备份集为提高性能,分配多个通道并将文件分配给特

38、定通道。02压缩备份RMAN BACKUP AS2 COMPRESSED BACKUPSET3 DATABASE;RMAN CONFIGURE DEVICE TYPE 2 DISK PARALLELISM 23 BACKUP TYPE TO4 COMPRESSED BACKUPSET;02 映像副本RMAN BACKUP AS COPY2 DATAFILE /ORADATA/users_01_db01.dbf3 FORMAT /BACKUP/users01.dbf; RMAN BACKUP AS COPY4 ARCHIVELOG LIKE arch_1060.arc5 FORMAT arch_

39、1060.bak;02BACKUP 命令选项检查物理块损坏。扫描物理损坏。对中止前所允许检测到的损坏数量设置阈值。执行备份操作前验证目标输入文件。对备份集进行双重备份。覆盖现有备份集或映像副本。将对存储设备与磁盘上数据文件之间数据传输的控制传递给介质管理层。加密备份文件。02 备份归档重做日志联机重做日志文件切换是自动的。执行归档日志故障转移。可以指定要备份的归档重做日志的范围。归档重做日志文件的备份集不能包含任何其它类型的文件。RMAN BACKUP2 FORMAT /disk1/backup/ar_%t_%s_%p 3 ARCHIVELOG FROM SEQUENCE=2344 DELET

40、E INPUT;02 数据库整体备份RMAN BACKUP DATABASE PLUS ARCHIVELOG;02 RMAN 备份类型完全备份包含所有使用的数据 文件块。级别为0 的增量备份等同于标 记为0 级的完全备份。级别为1 的累积增量备份仅包 含自上次级别为0 的增量备份 以来修改的块。级别为1 的差异增量备份仅包 含自上次增量备份以来修改的 块。02 差异与累积差异增量备份包含自上次增量备份以来更改的所有块。累积增量备份包含自上次级别为0 的增量备份以来更改的所有块。02 块更改跟踪启用块更改跟踪可简化备份过程,其可以:在更改跟踪文件中记录更改的块由RMAN 自动使用(如果启用此选项

41、)通过避免备份过程中的完全数据文件扫描来优化增量备份02 启用块更改跟踪SQL ALTER DATABASE ENABLE 2 BLOCK CHANGE TRACKING3 USING FILE /mydir/rman_change_track.f 4 REUSE;02 增量更新备份RMAN RECOVER COPY OF2 DATAFILE n|file_name 3 WITH TAG incr_upd_df1;02LIST 命令操作列出数据文件的备份集和副本:列出指定表空间的任何数据文件的备份集和副本:列出包含指定范围的归档日志的备份集和副本:RMAN LIST BACKUP OF DAT

42、ABASE;RMAN LIST BACKUP OF DATAFILE2 /db01/ORADATA/u03/users01.dbf;RMAN LISTCOPY OF TABLESPACE SYSTEM;RMAN LIST COPY OF DATABASE ARCHIVELOG 2 FROM TIME=SYSDATE-7;02 REPORT 命令生成资料库的详细分析生成的报告可以回答以下问题:数据库中包含哪些数据文件?哪些文件需要备份?哪些备份可以删除?哪些文件不可恢复?02REPORT NEED BACKUP 命令列出需要备份的所有数据文件假定在还原过程中使用最新的备份提供三个选项增量(Inc

43、remental)天数(Days)冗余(Redundancy)恢复窗口如果不使用任何选项,则考虑已配置的保留策略REPORT NEED BACKUP incremental 3; REPORT NEED BACKUP days 3;REPORT NEED BACKUP redundancy 3;REPORT NEED BACKUP recovery window of 3 days;02REPORT OBSOLETE 和DELETE OBSOLETE查找根据当前保留策略设置应视为作废的所有恢复文件如果需要的备份副本不多于两个,列出作废的恢复文件:删除备份集键为4 的备份集:删除由于已存在两个以

44、上的备份而视为作废的恢复文件:RMAN REPORT OBSOLETE;RMAN REPORT OBSOLETE REDUNDANCY 2;RMAN DELETE BACKUPSET 4;RMAN DELETE OBSOLETE REDUNDANCY 2;02 RMAN 动态视图V$ARCHIVED_LOGV$BACKUP_CORRUPTIONV$BACKUP_DEVICEV$BACKUP_FILESV$BACKUP_PIECEV$BACKUP_REDOLOGV$BACKUP_SETV$BACKUP_SPFILEV$COPY_CORRUPTIONV$RMAN_CONFIGURATION02监视

45、RMAN 备份使用SET COMMAND ID 命令将服务器会话与通道相关联。查询V$PROCESS 和V$SESSION 以确定会话与RMAN 通道的对应关 系。查询V$SESSION_LONGOPS 以监视备份和副本的进度。使用操作系统实用程序监视进程或线程。01使用DBVERIFY 实用程序验证备份01DBVERIFY 命令行界面外部命令行实用程序用于确保备份数据库或数据文件在还原之前是有效的遇到数据损坏问题时可作为有用的诊断辅助工具%dbv file=/ORADATA/u03/users01.dbf logfile=dbv.log01 文件丢失的原因以下原因可能会导致文件丢失:用户错误

46、应用程序错误介质故障01关键性与非关键性可通过采取以下措施之一来修复该问题:创建一个新文件。重建文件。恢复丢失或损坏的文件。01 丢失TEMPFILE如果缺失任何一个临时文件,则需要TEMP 空间来执行的SQL 语句 都将失败。SQL select * from big_table order by 1,2,3,4,5,6,7,8,9,10,11,12,13;select * from big_table order by 1,2,3,4,5,6,7,8,9,10,11,12,13*ERROR at line 1:ORA-01565: error in identifying file /u0

47、1/app/oracle/oradata/orcl/temp01.dbf ORA-27037: unable to obtain file status Linux Error: 2: No such file or directory01 恢复TEMPFILE 丢失01日志组状态:概述在任何给定时间,重做日志组的状态都 会是以下值之一:CURRENT:LGWR 进程当前正在向重做 日志组写入重做数据。ACTIVE:不再向重做日志组写入数据, 但是仍需要它来进行实例恢复。INACTIVE:不再向重做日志组写入数据, 且不再需要它来进行实例恢复。01丢失重做日志组成员缺失重做成员文件时,预警日志

48、和归档进程(ARCn) 跟踪文件将记 录一条错误消息。Errors in file/u01/app/oracle/admin/orcl/bdump/orcl_arc1_25739.trc: ORA-00313: open failed for members of log group 2 of thread 1ORA-00312: online log 2 thread 1: /u01/app/oracle/oradata/orcl/redo02b.log ORA-27037: unable to obtain file status Linux Error: 2: No such file

49、or directory01 重新创建重做日志文件SQL ALTER DATABASE DROP LOGFILE MEMBER/u01/app/oracle/oradata/orcl/redo02b.log;SQL !rm /u01/app/oracle/oradata/orcl/redo02b.log SQL ALTER DATABASE ADD LOGFILE MEMBER/u01/app/oracle/oradata/orcl/redo02b.logTO GROUP 2;01重新创建口令验证文件使用OS 验证登录到数据库。将REMOTE_LOGIN_PASSWORDFILE 参数设置为N

50、ONE 并重新启动 数据库。使用orapwd 重新创建口令文件。将REMOTE_LOGIN_PASSWORDFILE 设置EXCLUSIVE。向口令文件添加用户并向每个用户分配适当的权限。重新启动实例。$ orapwd file=$ORACLE_HOME/dbs/orapwORCL password=admin entries=501 数据库恢复执行用户管理的完全或不完全恢复确定需要不完全恢复的情况使用RMAN 执行完全或不完全恢复基于时间、SCN、日志序列、还原点或取消等方法执行不完全恢复恢复自动备份的控制文件恢复只读表空间01RMAN恢复命令restorerecoverswitch01 R

51、ECOVER 命令从备份还原所有数据库文件,然后恢复数据库:从备份还原损坏的数据文件,然后恢复数据文件:或SQL RECOVER DATABASESQL RECOVER DATAFILE2 /oradata/indx01.dbfSQL RECOVER TABLESPACE index_tbs01RMAN 恢复:RESTORE和RECOVER 命令runsql ALTER TABLESPACE inv_tbs OFFLINE IMMEDIATE; RESTORE TABLESPACE inv_tbs;RECOVER TABLESPACE inv_tbs DELETE ARCHIVELOG; sq

52、l ALTER TABLESPACE inv_tbs ONLINE;01 完全恢复与不完全恢复恢复可分为以下两类:完全恢复是将数据库恢复到当前最新状态,包括直至请求恢复时进 行的所有已提交的数据更改。不完全恢复是将数据库恢复到请求恢复操作之前的指定的过去时间 点。01完全恢复过程01不完全恢复过程01 需要不完全恢复的情况完全恢复由于归档日志文件丢失而失败。丢失了数据文件和一个或多个未归档重做日志文件。丢失了非多路复用联机重做日志文件。01 不完全恢复的类型不完全恢复有以下四种类型:基于时间的恢复基于取消的恢复基于更改的恢复日志序列恢复01 执行用户管理不完全恢复将数据库恢复到某一时刻:恢复数

53、据库直到执行取消操作:使用备份控制文件进行恢复:SQL RECOVER DATABASE UNTIL 2 TIME 2016-12-14:12:10:03;SQL RECOVER DATABASE UNTIL CANCEL;SQL RECOVER DATABASE2 UNTIL TIME 2016-12-14:12:10:033 USING BACKUP CONTROLFILE;01执行用户管理的不完全恢复要执行用户管理的不完全恢复,请按以下步骤进行操作:关闭数据库。还原数据文件。装载数据库。恢复数据库。使用RESETLOGS 选项打开数据库01用户管理的基于时间的恢复:示例情况如下:某个作业

54、运行出错,必须取消其结果和影响。该操作发生在15 分钟前,并且在此之后数据库活动很少。您决定执行不完全恢复,将数据库还原到15 分钟前的状态。SQL SHUTDOWN IMMEDIATE$ cp /BACKUP/*.dbf/u01/db01/ORADATA SQL STARTUP MOUNTSQL RECOVER DATABASE UNTIL TIME 2016-11-28:11:44:00; SQL ALTER DATABASE OPEN RESETLOGS;01用户管理的基于取消的恢复:示例情况与基于时间的示例相同,除了以下各项:重做日志未进行多路复用。一个联机重做日志丢失。丢失的重做日志

55、未归档。该重做日志包含自上午11:34 以来的信息。丢失了26 分钟的数据。用户可以手动重新输入其数据。01用户管理的基于取消的恢复:示例用户管理的基于取消的恢复:示例按以下步骤恢复数据库:1. 关闭数据库。2. 从最新备份还原所有数据文件。3. 已经具有了有效备份,所以可以装载数据库。4. 执行RECOVER DATABASE UNTIL CANCEL。5. 执行ALTER DATABASE OPEN RESETLOGS 以打开数据库。01使用RMAN 执行不完全恢复装载数据库。分配多个通道以并行执行操作。还原所有数据文件。使用UNTIL TIME、UNTIL SEQUENCE 、UNTIL

56、 SCN 恢复数据库。使用RESETLOGS 打开数据库。01使用RMAN 的基于时间的恢复:示例RMAN RUN 2 SET UNTIL TIME = 2016-11-28:11:44:00;3 RESTORE DATABASE;4 RECOVER DATABASE;5 ALTER DATABASE OPEN RESETLOGS; 01 使用RMAN 的日志序列恢复:示例RMAN RUN 2 SET UNTIL SEQUENCE 120 THREAD 1;3 ALTER DATABASE MOUNT;4 RESTORE DATABASE;5 RECOVER DATABASE; # recov

57、ers through log 119 6 ALTER DATABASE OPEN RESETLOGS;7 01不完全备份和预警日志下面是在不完全恢复情况下,有关预警日志的一些最佳方案: 恢复前后检查预警日志。查找错误信息、提示和SCN。确认恢复过程中的各步骤都已成功完成。01还原点SQL CREATE RESTORE POINT before_load;RMAN RECOVER DATABASE UNTIL RESTORE POINTbefore_load;还原点:用作SCN 或特定时间点的别名 存储在控制文件中可以与以下各项配合使用:RECOVER DATABASE FLASHBACK D

58、ATABASE FLASHBACK TABLE01不完全恢复:最佳方案提前计划和实践方案。研究并确认不完全恢复是必要的。 认真执行所有步骤。恢复前后对整个数据库进行备份。 始终验证恢复是否已成功完成。 使用还原点01恢复控制文件自动备份RMAN RESTORE CONTROLFILE TO /oradata/ctlfile.bak FROM AUTOBACKUP;RECOVER DATABASE; ALTER DATABASE OPEN RESETLOGS;01创建新的控制文件SQL ALTER DATABASE BACKUP CONTROLFILE TO TRACE;01回顾总结按数据库备份

59、的本质划分物理备份 逻辑备份按备份时,数据库是否可用(是否启动)划分“热”备份,或联机备份,或非一致性备份 “冷”备份,或脱机备份,或一致性备份按备份数据数据是否完整划分完全备份 增量备份按备份的介质划分磁盘备份 磁带备份按备份的方式划分 RMAN备份 expdp/exp备份03闪回技术03闪回技术Flashback(闪回)是Oracle10g里新加入的一个非常有用 的一个特性。闪回技术提供了从逻辑错误中恢复的更有效和更 快的方法。闪回操作使数据库中的实体显示或回到过去的某一时间点, 这样可以实现对历史数据的恢复。闪回数据库功能可以将Oracle数据库恢复到以前的时间点Oracle数据库10g

60、提供了五个新的闪回功能: 闪回版本查询,闪回事务查询, 闪回删除,闪回表,闪回数据库。Oracle数据库11gR1提供了一个有趣的新的闪回功能:闪回数据存档,它允许一个Oracle数据库管理员维护一个记录, 对指定时间范围内对所有表的改变情况进行记录。03闪回查询闪回查询(Flashback Query):查询过去某个时间点或者某个SCN值时表中的数据。Select *from vivien.test_dmp as timestamp to_timestamp(2017-12- 19 14:09:37,yyyy-mm-dd:hh24:mi:ss);Select *From vivien.tes

温馨提示

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

评论

0/150

提交评论