设为首页 收藏本站
查看: 773|回复: 0

[经验分享] Oracle用户管理的备份与恢复介绍

[复制链接]

尚未签到

发表于 2018-9-5 12:17:55 | 显示全部楼层 |阅读模式
  数据库维护中,备份或恢复是重中之重的问题。尽管很多时候数据库系统运行缓慢,
  但对数据库数据的丢失而言,显然后者损失的代价是不言而喻的,DBA首要的工作就
  是尽一切可能地做好数据的备份工作。
  1.1、物理备份与逻辑备份
  01、物理备份是所有物理文件的一个副本,比如数据文件,控制文件,归档日志等。该副本能被存储在本地磁盘或磁带等等。
  物理备份是备份或恢复的基础
  包括冷备份(非归档模式)或热备份(归档模式)
  02、逻辑备份
  将表、存储过程等数据使用Oracle的export等工具导出到二进制文件,后续根据需要再使用import工具导入数据库。
  逻辑备份则是对物理备份的方式的一种补充,多用于数据迁移。
  1.2、备份恢复工具
  01、用户托管的备份与恢复,是一种手动备份恢复的方式。使用操作系统命令和SQL*plus来完成相关的备份与恢复。
  02、使用RMAN来备份恢复,支持命令行及GUI接口,支持第三方磁带库备份,功能比较强大。
  支持备份数据库、表空间、数据文件、控制文件、归档日志等
  可以保存频繁使用备份恢复脚本
  支持增量备份,跳过未使用的块,以及控制备份速度
  在备份期间侦测损坏的数据
  通过自动并发、限制I/O等提高备份性能
  03、使用exp/imp、expdp/impdp之类的逻辑导出与导入工具。 支持全库、用户、表、带条件级别的导出与导入可以导到结构,也只可以只导出数据是跨平台迁移的最佳工具
  1.3、常见的备份类型
  联机数据库备份 -->使用archivelog模式,SCN不一致
  脱机数据库备份 -->使用noarchivelog模式,SCN保持一致
  整个数据库-->可以在不同的时间段来备份,减轻I/O压力,从而构建整个数据库
  表空间-->在archivelog模式下,当处于noarchivelog模式下,则该表空间必须为只读或脱机
  数据文件 -->同表空间备份
  控制文件 -->可以使用SQL语句或RMAN来备份
  归档日志
  参数文件
  1.4、备份的分类
  (1) 备份策略:
  a.整体:备份属于数据库的控制文件和所有数据文件
  b.部分:备份数据库的一部分
  (2) 备份类型:
  a.完全:非增量RMAN备份
  b.增量:只备份以前某次备份以来更改的信息
  (3) 备份模式:
  a.脱机:一致性备份,也称为冷备份
  b.联机:非一致性备份,也称为热备份
  1.5、恢复的分类
  何时需要使用备份进行恢复:
  发生以下类型的错误时,通常需要使用备份执行恢复:
  (1) 介质故障:因数据库文件的物理问题而导致无法读写该文件
  (2) 用户错误:数据库中的数据被误更改或误删除
  数据恢复概览:
  崩溃恢复:发生实例错误后自动恢复
  介质恢复:恢复当前数据文件、控制文件
  Oracle数据库体系结构:崩溃恢复
  (1) 使用联机重做日志文件前滚数据库
  (2) 回退未提交的更改Oracle数据库体系结构:在介质故障后恢复(1) 使用备份还原数据文件
  (2) 使用归档和联机重做日志文件前滚数据库
  完全恢复:将数据库恢复到最近的时间点
  不完全恢复(时间点恢复):将数据库恢复到在特定时间或待定系统scn时的状态
  完全恢复
  使用数据库,表空间或数据文件的备份进行还原,再使用归档,重做日志或增量备份将数据更新到当前时间点
  用户可以实现基于对数据库、表空间、数据文件执行完全恢复
  可以分为在非归档模式下和归档模式下的完全恢复,完全恢复主要是针对归档模式下的,在非归档模式下很难做到完全恢复,除非是在做恢复时,联机重做日志还没有被重写。
  不完全恢复
  与完全恢复是同样的步骤,只不过不完全恢复仅仅是将数据恢复到某一个特定的时间点或特定的SCN,而不是当前时间点。
  下列情况通常需要进行不完全恢复:
  介质故障(media failure)导致部分或全部联机重做日志(online redo log)损坏
  用户操作失误(user error)导致数据丢失,例如,用户由于疏忽而移除了表,提交了无效的数据到表
  由于归档重做日志(archived redo log)丢失而无法进行完全恢复(complete recovery)
  当前控制文件(control file)丢失,必须使用备份的控制文件打开(open)数据库
  关于非归档的恢复说明
  1.在非归档模式下,在丢失数据文件后唯一的选择是执行完整的数据库还原,而不能进行恢复;
  2.还原完整的数据库是还原所用的数据文件和控制文件;
  3.还原前提是要备份,因为是非归档模式所以只能进行冷备份,主要备份所有的数据文件和控制文件。对于联机重做日志文件,在正常关闭数据库的情况下,可以不备份它,但是在不正常关闭数据库的情况下要进行备份,建议备份下来,这样就可以不用重建了。
  非归档模式下的恢复。
  1.如果放数据文件的磁盘没有损坏,只是某种原因导致某些数据文件的丢失,那么只要把备份的数据库(所有数据文件和控制文件),复制到原来的地方即可。
  2.如果是磁盘损坏,则不能放到原来的位置了,必须放到新的磁盘下。这样就要修改参数文件和控制文件的信息, 才能正常打开数据库。
  3.现在模拟第二种情况(即磁盘损坏),首先对数据库进行冷备份,新建个目录/oracle/ubackup,在/oracle/oradata/itpux下的所有文件(数据文件,控制文件和联机重做日志文件)复制到ubackup目录下。
  不完全介质恢复的几种类型:
  基于时间的恢复(Time-based recovery) 将数据恢复到指定的时间点。
  用户控制的恢复(Cancel-based recovery) 当用户提交CANCEL后停止恢复(此选项在使用RMAN时无效)。
  基于SCN 的恢复(Change-based recovery) 将数据恢复到指定的SCN按重做日志序号恢复(Log sequence recovery)将数据恢复到指定的重做日志序号(仅使用RMAN时有效)。
  表空间按时间点恢复(tablespace point-in-time recoveryTSPITR) 可以将一个或多个表空间恢复到与数据库中其他表空间不同的时间点,但是SYSTEM表空间,UNDO表空间,或任何包含回滚段(rollback segment)的表空间无法使用TSPITR功能与其它表空间有依赖性的表空间应当同时恢复被依赖的表空间,如两张表存在依赖性且位于不同的表空间。
  恢复的相关视图
  v$reover_file --查询需要恢复的文件,该视图信息来自控制文件,如控制文件来自备份或重建过则信息会不准。
  v$archived_log--查询所有归档日志列表。
  v$recovery_log--查询所有需要用于恢复的日志。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-563575-1-1.html 上篇帖子: Oracle Procedure记录 下篇帖子: oracle cursor(静态)记录
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表