Oracle数据库备份恢复技术详解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

01 联机物理备份恢复例子
当数据库提示该文件的磁盘有问题或者文件被误删除,数据库 不能打开,提示需要介质恢复时,进行覆盖。
01 逻辑备份的方法?
1.Export小工具 2.DATA PUMP 数据泵
10g 之前使用exp/imp工具 10g开始除了exp/imp,还多了expdp/impdp
01 导出备份的模式?
01 物理备份细分?
1.脱机物理备份 需要数据文件/redo log/控制文件/参数文件(可选) 数据库必须为正常关闭的情况下执行
2.联机物理备份 数据库为归档模式
业务是否可以停止
数据库是否为归档模式
01 脱机物理备份(冷备)的步骤?
1.获取备份文件的目录和文件名 dba_data_files/V$CONTROLFILE/v$logfile
01 程序错误
Application Errors
应用程序发生故障,导致块损坏。
当物理损坏,数据库不能认到块 则称作介质损坏。 现象: checksum 无效 块包含的都是0 块头和块尾不匹配 解决办法: 当块损坏量不大, 可以通过块介质恢复(block media recovery)进行修复
01 灾难恢复问题?
A backup is a copy of data of a database that you can use to reconstruct data. 备份是你能够重建数据或数据库的数据复制
基于多种目的的数据保护 基于不同需求的数据转换
01 恢复是什么?
恢复是当意外发生或者有其他需要时, 将已经备份的数据信息还原到数据库中。
1.表模式:导出用户所有表或者指定的表 2.用户模式:导出用户是有对象以及对象中的数据或 者 只导出表结构 3.表空间模式:按表空间名导出数据对象 4.全库模式:导出数据库中所有对象
01 导入备份
导入是导出的逆向工程。 导入先读取导出的二进制文件,运行文件,恢复对象用户数 据。
当全库导入时,所有对象都会自动创建,例如表空间,数据文件, 用户。一般考虑到数据库中的物理规划,都会提前创建。
物理备份将以上这些文件复制储存到另一个目录, 可以是磁盘或者脱机储存。
01 逻辑备份是什么?
逻辑备份通过对数据库的逻辑数据比如表,存储过程, 用户等数据写入二进制文件,与数据库内部文件的物理 位置无关。
01 两者的关系?
物理备份是任何有效的备份恢复策略的基础。
逻辑备份是在很多情况下有效提高物理备份的补充, 但当数据丢失并且没有物理备份的情况下并不能完全满足。
01 导出备份的用户模式
操作步骤: exp system/passwd@TEST1 owner=vivien file="/app/oracle/orabak/exp/EXP_vivien.dmp“ log=“/app/oracle/orabak/exp/EXP_vivien.log“
01 导出备份的表空间模式
操作步骤: exp system/passwd@TEST1 tablespace=users file="/app/oracle/orabak/exp/EXP_users_tbs.dmp“ log=“/app/oracle/orabak/exp/EXP_users_tbs.log“
实际工作中,并没有使用 过这种模式.
01 备份的种类?
备份只能是逻辑备份或物理备份的一种。
01 物理备份?
physical backups are copies of the physical files used in storing and recovering a database. 物理备份是用于恢复数据库的物理文件的复件。
01 导入备份的用户模式
操作步骤: imp system/passwd@TEST1 FROMUSER=VIVIEN TOUSER=VIVIEN file="/app/oracle/orabak/exp/EXP_vivien.dmp“ log=“/app/oracle/orabak/exp/IMP_vivien.log“
01 导出备份的全库模式
操作步骤: exp system/passwd@TEST1 FULL=Y file="/app/oracle/orabak/exp/EXP_db_all.dmp“ log=“/app/oracle/orabak/exp/EXP_db_all.log“
01 导入备份的表模式
趋势: 在导致数据库停机时间的原因 占比中越来越大
01 网络故障
典型问题
监听程序失败 网络接口卡 (NIC) 故障 网络连接失败
可能的解决方法
配置备份监听程序和连接时故障 转移 配置多个网卡
配置备份网络连接
01 实例故障
典型问题 断电 硬件故障 一个后台进程出现故障 紧急关闭过程
可能的解决方法
使用“startup”命令重新启动实 例。 从实例故障进行恢复是自动执行 的, 其中包括前滚重做日志中的更改和 回 退任何未提交的事务处理。
01 为什么需要DBA介入并进行数据恢复?
1 硬件故障和系统故障 2 误操作 3 病毒 4 软件故障 5 自然灾害
需要灾难恢复策略来保护对抗灾难数据丢失
01 介质损坏?
磁盘不能进行正常的IO操作
任何数据库文件对于介质损坏都是脆弱的
典型原因
可能的解决方法
磁盘驱动器故障 磁盘控制器故障 删除或损坏了数据库文件
2.正常关闭数据库 SQL>SHUTDOWN IMMEDIATE
3.执行文件备 份 cp file1 file2
4.启动数据库 SQL>STARTUP
优点:操作简单, 没有很高的门槛
缺点:数据库需要关闭 数据文件多时备份时间太久/备
份集太大 只能恢复到备份的时间点
01 脱机物理备份的恢复步骤?
1正常关闭数据库 SQL>SHUTDOWN IMMEDIATE
01 用户故障的影响
localized 局部的 Demo: 从employee表中误删除了一个人的影响
widespread 广泛的 Demo: 一批自动化job删除了一个公司的当月订单
01 用户故障的后续
目标: 尽可能的降低数据库的停机时间
解决措施: 1.用户培训 2.合理管理用户授权(能够避免大多数的用户误操作) 3.需要进行操作复核 4.需要进行操作审计 5.定制和实施合理的备份策略 6.回退或使用闪回查询进行恢复 7.从回收站中恢复
01 导出备份的全库模式
操作步骤: imp system/passwd@TEST1 FULL=Y file="/app/oracle/orabak/exp/EXP_db_all.dmp“ log=“/app/oracle/orabak/exp/IMP_db_all.log“
01 导出备份的表模式
操作步骤: exp system/passwd@TEST1 TABLES=(ptop ,vivien.disk) file="/app/oracle/orabak/exp/EXP_vivien_tab.dmp“ log=“/app/oracle/orabak/exp/EXP_vivien_tab.log“
01 联机物理备份例子
在线备份用户表空间 1.连接数据库 $sqlplus system/oracle@SID 2.获取需要备份的users表空间的数据文件信息 SQL>SELECT FILE_NAME FROM DBA_DATA_FILES WHERE TABLESPACE_NAME=‘USERS’; 3.设置开始在线备份标记 SQL>ALTER TABLESPACE USERS BEGIN BACKUP; 4.备份表空间对应的数据文件 SQL>host cp /app/oracle/oradata/TEST1/USERS.DBF /app/oracle/orabak/TEST1/online/USERS.DBF 5.设置停止在线备份标记 SQL>ALTER TABLESPACE USERS END BACKUP;
备份恢复策略的目的是保护数据避免数据丢失和当数据丢失后重建数据库。
01 我们的责任?
Devise—设计 Implement –实施 Manage –管理
备份恢复策略 (strategy)
01 备份的?
数据的保存 设计到创建数据库备份的长期存储机制
数据转换 当涉及数据从一个数据库迁移到另一个库或者主机
• 启用可恢复的空间分配 • 增加所有者限额 • 增加表空间的空间
与开发人员合作来更正程序错误
01 用户进程故障
典型问题
用户执行了异常断开连接操作
用户会话已异常终止
用户遇到了程序错误并终止了 会话
可能的解决方法
通常不需要DBA 执行任何操作就 可解决用户进程故障。实例后台进 程会回退未提交的更改并解除锁定。 观察变化趋势
01 导入备份的表空间模式
操作步骤: imp system/passwd@TEST1 FROMUSER=VIVIEN TOUSER=VIVIEN file="/app/oracle/orabak/exp/EXP_vivien.dmp“ log=“/app/oracle/orabak/exp/IMP_vivien.log“
01 备份的对象:数据库必要组成文件
参数文件
临时文件
控制文件 undo文件
数据文件 Redo log文件
归档文件
01 备份的对象:数据库必要组成文件
01 Байду номын сангаас务的四大特征
原子性(Atomicity) 一致性(Consistency) 隔离性(Isolation)
持久性(Durability)
01 什么是备份恢复目的?
操作步骤: imp system/passwd@TEST1 FROMUSER=VIVIEN TOUSER=VIVIEN TABLES=(laptop,disk) tablespace=users commit=y file="/app/oracle/orabak/exp/EXP_vivien_tab.dmp" log=“/app/oracle/orabak/exp/IMP_vivien_tab.log”
2.将备份出的文件恢复到原定的相关目录 cp file1 file2
4.启动数据库 SQL>STARTUP
01 联机物理备份前提
1.检查当前数据库处于归档/非归档模 式 SQL>ARCHIVE LOG LIST
2.修改为归档模式 SQL>ALTER SYSTEM SET LOG_ARCHIVE_DEST_1=‘location=/ARCH1' SCOPE=BOTH; SQL>SHUTDOWN IMMEDIATE SQL>STARTUP MOUNT; SQL>ALTER DATABASE ARCHIVELOG; SQL>ALTER DATABASE OPEN; SQL>ALTER SYSTEM SWITCH LOGFILE; #切换redo,查看对应目录 是否有归档生成
Oracle数据库备份恢复技术详解
技术创新,变革未来
目录 Contents
01 备份恢复基础知识 02 RMAN备份恢复介绍 03 闪回技术
01 备份恢复基础
01 为什么需要备份?
1 笔记本系统重装之历史邮件(计划内)
2
备份的必要性
3
备份的时效性
01 备份是什么?
Backup and Recovery User's Guide (e10642)
1. 从备份中还原受影响的文件。
2. 如果需要,通知数据库关于新 文件的位置。
3. 如果需要,通过应用重做信息来 恢复文件。
语句故障
典型问题 尝试表中插入无效数据
可能的解决方法 与业务用户合作来验证并更正数据
尝试执行操作,但权限不足 提供适当的对象或系统权限
尝试分配空间失败 应用程序中存在逻辑错误
在出现严重灾难的情况下,您的业务会受到什么样的影响?
– 地震、水灾或火灾 – 完全丢失计算机 – 存储硬件或软件故障 – 失去重要人员,如数据库管理员
是否已制定定期测试策略的计划?
01 备份恢复的任务?
各种失败的计划和测试责任 设置数据库的备份和恢复环境 设定备份安排 监控备份恢复环境 处理备份的问题 当数据丢失时能够恢复
使用预警日志、跟踪文件调查出现 错误 的原因。
01 可能的用户故障
SQL>DROP TABLE T_T1; SQL>TRUNCATE TABLE T_T1; SQL>DELETE FROM T_T1; SQL>COMMIT; SQL>UPDATE T_T1 SET TNAME=‘B’; SQL>COMMIT;
相关文档
最新文档