`
Luob.
  • 浏览: 1574428 次
  • 来自: 上海
社区版块
存档分类
最新评论

Oracle 联机备份 脱机备份 物理备份 恢复

阅读更多
1.备份
指的是拥有数据库文件的有效副本,可以将数据库恢复到初始状态。在oralce数据库中,存在多种可以用来实现数据库文件备份的方法。

2.恢复
指的是将数据库返回到需要的状态,在某些状态下,数据的一些数据可能丢失或者破坏,那么DBA就需要将数据库重新设置或恢复到以前的某个时刻,这个时刻的数据是完整的正确的。

3.用户管理的备份和恢复是指不使用备份和恢复工具,只是通过操作系统的命令或者SQL语句进行操作

4.备份的分类
逻辑备份物理备份
导出方式脱机备份(冷备份)联机备份(热备份)
优点能够针对对象进行备份:能够通过跨平台实施备份并迁移数据库,而不需要关闭数据库备份和恢复迅速,容易达到低维护,高安全性,执行效率高备份时间短:备份是数据库仍可用,可达到秒级恢复,对于几乎所有数据对象都可以恢复
缺点导出方式并不能保证介质失效,仅仅是逻辑上的备份只能提供的到某一时间点的恢复,不能按表和用户恢复,必须关闭数据库实现过程比较复杂,需要较大的空间存放归档文件,操作时候不允许失败,否则恢复不能进行
时机一般用户有规律的日常备份数据库可以暂时关闭,或者需要和联机备份配合使用数据访问量小,需要实现表空间或者数据库文件级的备份,或者选哟更高精确备份时


5.物理备份
是将数据库的数据文件,重做日志文件和控制文件等,在操作系统中进行复制,这些备份也称作“文件系统备份”因为涉及到使用操作系统文件目录。
物理备份可以实现数据库的完整备份,但是数据库必须运行在归档模式下。
可以使用RMAN实用程序来执行所有的物理备份。


6.物理备份的种类
1.完全数据脱机备份:使用shutdown命令正常关闭数据时(也就是说不是由于数据库实例失效而关闭)会发生一致的脱机备份。完全数据库脱机备份是对数据中的全部数据文件,日志文件,控制文件。在数据库关闭的情况下进行操作系统备份
2.部分数据库脱机备份:可以在数据库关闭和运行时进行,将部分表空间切换到脱机状态后,将对应的数据文件进行备份。
3.部分数据联机备份:联机备份是在数据库正常运行时进行的,备份期间不会影响用户使用。部分数据库联机备份包括部分表空间、控制文件、数据文件和归档日志文件的备份,与完全数据库脱机备份相比,减少了备份的工作量。


7.物理备份的口令
文件类型备份命令示例
数据文件 操作系统命令 COPY c:\datafile1.dbf d:\datafile1.dbf,表示将目录c:\的datafile1.dbf文件复制到d:\目录下
日志文件操作系统命令COPY c:\logfile1.log d:\logfile1.log,表示将目录c:\的logfile1.log文件复制到目录d:\下
控制文件SQL命令ALTER DATABASE BACKUP CONTROLFILE TO confile1.ctl
初始化参数文件SQL命令CREATE PFILE SIDinit.ora FROM SPFLE
数据库逻辑对象(表、索引等)Export命令Export system/password


8.完全数据库脱机备份
sqlplus-->conn sys/dba as sysdba //登录
select file_name,bytes form dba_data_files; //oracle所有的数据文件
select member from v$logfile; //oralce 的日志文件
select name from v$controlfile; //oracle 的控制文件
shutdown immediate;//关闭数据库
win+r  cmd
copy E:\app\admin|oradata\control01.ctl e:\app\backup\contro01.ctl //复制上面查询出来的所有数据文件,日志文件,控制文件。 
startup //启动数据库实例
//完毕


9.部分数据库脱机备份
//注意1:不能将system表空间执行这种操作。由于system表空间包含数据库的字典,而数据库存储了与数据库对象有关的所有信息。如果system表空间脱机,那么将无法识别任何数据对象,如 表,索引等
//注意2:模式对象不能跨表空间存储。例如:表 table1存储在tablespace1中,但是该表的一个索引存储在tablespace2中。如果表空间tablespace2被设置为脱机,没有对表空间tablespace1进行脱机设置。这时候,用户对表table1执行查询,并且需要索引时候,就发生了异常。要避免上述错误,可以将tablespac1也设置成脱机状态 或 对表 tabel1不进行任何DML操作。
select tablespace_name from dba_tablespaces; //oralce 所有的表空间 --不能system哦
//对其中的某个tablespace进行备份
select tablespace_name,file_name from dba_data_file where tablespace_name='TESTSPACE'; // 显示这个表空间的数据文件
alter TABLESPACE testspace OFFLINE; //使 testpace表空 脱机
win+r cmd  copy file_name  tofilename; //备份 上面表空间中的数据文件 file_name 上面查询出来的
alter TABLESPACE testspace online;


10.部分数据库的联机备份
//联机备份是在数据库打开的状态下进行的,在进行联机备份的同时,数据库仍然可以访问,用户有可能对数据进行修改和删除等操作,从而使得数据库文件之间存在不同步。在备份文件复制回数据库时,需要实施数据库恢复,所以这种方式只可以在归档模式下使用,在复制回备份文件后,必须使用归档日志进行数据库恢复。在进行部分数据库联机备份时,可以对一个指定表空间的所有数据文件进行备份,也可以对表空间中的某一个数据文件进行备份。
archive log list; //设置日志模式为 归档模式
alter TABLESPACE testspace begin backup; //将开始执行备份操作
select a.file#,a.checkpoint_change#,b.file_Name form b$datafile a,dba_data_files b where a.filed#=b.file_id; //可以看出 tablesapce下的所有数据文件 的检测点号为停止状态,其他文件的检测点好为正在进行的
shutdown immediate;//此步骤 不需要。如果此时关闭数据库 会报错 无法关闭, 文件xx设置了联机备份。
win+r cmd copy file_name tofilename; //对tablespace的所有数据文件进行备份
alter TABLESPACE testspace end backup;//结束联机备份。 中间间隔时间最好短,对数据库性能有影响。

11.用户管理的完全恢复机制
用户管理的完全恢复是指当数据文件出现介质失败时,使用操作系统命令转储数据文件,并使用SQL恢复命令执行重做日志和归档日志,最终将数据文件恢复到失败点之前的状态。对数据库进行完全恢复大致分为以下两个步骤:
(1)当发生介质故障后,利用备份文件来修复损坏或丢失的数据文件。
(2)修复数据文件后,因为被修复的数据文件与其他数据文件相比要
“旧”,所以这时数据库中的数据文件并不同步(文件头部信息中的检查点号
SCN不同)。由于数据文件之间不一致,数据库仍然无法打开,这时就需
要通过SQL命令,使用归档日志对数据库进行恢复。
完全数据库恢复的命令如下:
RECOVER DATABASE;//用于恢复数据库的多个数据文件,该命令只能在MOUNT状态下使用。
RECOVER TABLESPACE;//用于恢复一个或多个表空间的所有数据文件,该命令只能在OPEN状态下运行。
RECOVER DATAFILE;//用于恢复一个或多个数据文件,该命令可以在MOUNT状态和OPEN状态下运行。
//同时,可以指定数据文件的名称和数据文件的编号。例如:
recover datafile 4;
//也可以在RECOVER命令中指定归档日志位置,如下:recover from 'f:\oracle11g\orcl0025_069817.001' datafile 4;
//也可以在RECOVER命令中指定自动应用归档日志,如下:
recover automatic datafile 4;

12.不完全恢复机制
1.基于时间的恢复,也可以称为时间点恢复,它将数据库中已经提交的事务恢复到某个时间点为止。基于时间的不完全恢复过程中,对数据库文件应用日志记录时,将以时间为标记。
//例如,当用户执行了某个错误操作后,立即意识到该操作是错误的,并及时通知了DBA,则DBA根据用户指定的时间,将数据库恢复到该时间之前的状态。
基于时间的不完全恢复使用的语句如下:
RECOVER DATABASE UNTIL TIME time;
如果控制文件是利用备份修改的,那么必须在RECOVER语句中使用
USING BACKUP CONTROLFILE子句,如下:
RECOVER DATABASE UNTIL TIME time USING BACKUP CONTROLFILE;
例如:recover database until time '2009-07-10 10:35:58';

2.基于撤销的不完全恢复:在进行基于撤销的不完全恢复过程中,DBA需要对恢复过程进行控制,在某一个恢复点可撤销指定的操作。
//例如:当一个或多个联机日志文件由于介质故障被破坏,不能实施完全数据库恢复时,可以进行基于撤销的恢复,将数据库恢复到最近的、未破坏时的日志文件后中止恢复过程,数据库将从这一点开始重新运行。
基于撤销的恢复的使用语句如下:
RECOVER DATABASE UNTIL CANCEL; 
例如:recover database until cancel;

3.基于更改的恢复:最准确的恢复是基于更改的恢复,这种恢复方式使用SCN号信息。如果DBA确定引发错误的事务分配的SCN号后,可以将数据库恢复到该错误之间的事务。
基于更改的不完全恢复使用的语句如下:
RECOVER DATABASE UNTIL CHANGE scn_number;
例如:recover database until change 1074811;
2
4
分享到:
评论

相关推荐

    ORACLE 常用手册导入导出

    ·不能进行联机备份,脱机备份过程中不能使用数据库。 ·表空间不能立即脱机。 ·DBA的管理的工作减少 采用Oracle ArchiveLog模式和非ArchiveLog模式对备份恢复的影响 备份的目的在于,当系统或数据库出现问题时...

    构建最高可用Oracle数据库系统 Oracle 11gR2 RAC管理、维护与性能优化

    12.2物理备份工具RMAN 12.2.1 RMAN工作环境 12.2.2 RMAN支持备份的文件 12.2.3闪回恢复区 12.2.4 RMAN环境变量 12.2.5 RMAN的登录方式 12.2.6 RMAN执行命令的模式 12.2.7修改数据库归档模式 12.3 RMAN工作...

    oracle数据库dba管理手册

    10.5.1 逻辑备份和物理备份集成 302 10.5.2 数据库和操作系统备份集成 303 10.6 使用备份过程时的恢复情形 304 10.6.1 实例失败 304 10.6.2 介质失败 305 10.6.3 恢复意外删除或修改的对象 306 10.6.4 并行恢复 307 ...

    最全的oracle常用命令大全.txt

    使数据文件联机或脱机, 重新定位数据文件、重做日志文件。 执行“nomount”,然后打开控制文件,确认数据文件和联机日志文件的位置, 但此时不对数据文件和日志文件进行校验检查。 3、startup open dbname 先...

    Oracle 10g 开发与管理

    本文是由笔者2012年学习oracle数据库时编写...1.脱机备份 (无成本复制 copy paste) 107 2.联机备份 24*7模式 108 (二)逻辑备份 108 1.Export 导出 108 2.Import 导入 109 四. 数据库手动恢复 109 1. 完全恢复 109

    Oracle DBA 参考手册

    文档信息 2 目录 4 1. 前言 9 ...11.2.2. 完全数据库脱机备份 63 11.2.3. 联机部分数据库备份 63 11.2.4. 卸出(Export) /装入(Import) 63 11.2.5. 卸出数据(Export) 64 11.3. 恢复 65 11.4. 相关命令 65

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    oracle的框架主要由物理结构、逻辑结构、内存分配、后台进程、oracle例程、系统改变号 (System Change Number)组成  物理结构 物理结构包含三种数据文件: 1) 控制文件 2) 数据文件 3) 在线重做日志文件  ...

    oracle数据库经典题目

    16. Oralce数据库在进行物理备份有联机备份和脱机备份两种方式可供选择。 . 17. 从存储结构的角度来说,Oracle数据库可分为物理结构和逻辑结构。 18. 表空间是Oracle数据库中数据的逻辑组织,每个数据库至少有一个...

    中兴Oracle培训.PDF(高清)

    第1章数据库基础...................................................................................................................................2.3.1 数据库物理结构........................................

    orcale常用命令

    使数据文件联机或脱机, 重新定位数据文件、重做日志文件。 执行“nomount”,然后打开控制文件,确认数据文件和联机日志文件的位置, 但此时不对数据文件和日志文件进行校验检查。 3、startup open dbname 先...

Global site tag (gtag.js) - Google Analytics