博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Oracle备份恢复之冷备份恢复与异机还原
阅读量:6173 次
发布时间:2019-06-21

本文共 2451 字,大约阅读时间需要 8 分钟。

冷备份发生在数据库关闭状态下,直接拷贝物理文件的备份方式,备份数据库可以运行在归档模式,也可以运行在非归档模式。

备份流程:

         1)首先在运行的库中得到运行的所有文件。

         主要备份文件:passwordfile、spfile、controlfile、datafile、tempfile、logfile

         2)然后计划内关闭数据库,一般在晚上无人访问时关闭。

         3)拷贝物理文件到指定备份路径或设备。

         4)拷贝完成,立即启动数据库,使其正常工作。

备份脚本:

spool /u01/app/oracle/jiaoben/bf1.sql

select 'ho cp '||name||' /u01/app/oracle/lengbei/' from v$controlfile

union all

select 'ho cp '||name||' /u01/app/oracle/lengbei/' from v$datafile

union all

select 'ho cp '||name||' /u01/app/oracle/lengbei/' from v$tempfile

union all

select 'ho cp '||member||' /u01/app/oracle/lengbei/' from v$logfile

/

create pfile='/u01/app/oracle/lengbei/initorcl.ora' from spfile;

ho cp /u01/app/oracle/product/11.2.0/dbhome_1/dbs/orapworcl /u01/app/oracle/lengbei/

spool off

shutdown immediate

@/u01/app/oracle/jiaoben/bf1.sql

startup

rm -rf /u01/app/oracle/jiaoben/bf1.sql

还原:

1、非归档模式

1)非归档模式,全库物理文件丢失情况下的恢复:

a、关闭数据库,sqlplus可以进入即用sqlplus关闭、否则kill -9 杀死进程

b、拷贝备份文件到数据库物理文件具体路径。

c、sqlplus / as sysdba进入数据库,通过startup打开数据库。

此时的数据库恢复到当时备份的时间点,从备份到现在的数据库事务丢失。

除了完全恢复到备份时间点,不支持单个数据文件丢失的恢复过程。

2、归档模式

1)归档模式下,所有物理文件丢失情况下的恢复。

a、关闭数据库,sqlplus可以进入即用sqlplus关闭、否则kill -9 杀死进程

b、拷贝备份文件到数据库物理文件具体路径。

c、sqlplus / as sysdba进入数据库,通过startup mount。

d、recover database using backup controlfile;   auto

e、alter database open resetlogs;

         归档模式下的冷备份可以通过归档日志,在还原后初次启动数据库时进行恢复操作。同时,归档模式下也支持非归档冷备恢复办法。

2)归档模式下,system表空间丢失(可以支持单个数据文件丢失情况恢复):

a、shutdow关机

b、将备份文件考回数据文件位置

c、startup

d、recover datafile 1;recover tablespace system;recover database;

e、alter database open;

异机恢复:同平台、同版本

1、目标库不创建实例,目标库按照源库的目录结构创建目录,拷贝源库冷备文件到目标库下,按照源库的目录结构还原物理文件。

2、源库通过create pfile from spfile;创建参数文件,并同passwordfile一同拷贝到目标库$ORACLE_HOME/dbs/目录下。

3、按照源库的listener.ora和tnsnames.ora内容在目标库建立该文件或是修改其内容。

4、sqlplus / as sysdba方式进入sqlplus环境,通过startup pfile='$ORACLE_HOME/dbs/initorcl.ora'方式启动数据库。

5、create spfile from pfile;创建二进制参数文件。冷备迁移完成。

异机恢复:平台:rhel6.4~rhel6.5  版本:oracle 11g 11.2.0.1~oracle 11g 11.2.0.4

1、目标库不创建实例,目标库按照源库的目录结构创建目录,拷贝源库冷备文件到目标库下,按照源库的目录结构还原物理文件。

2、源库通过create pfile from spfile;创建参数文件,并同passwordfile一同拷贝到目标库$ORACLE_HOME/dbs/目录下。

3、按照源库的listener.ora和tnsnames.ora内容在目标库建立该文件或是修改其内容。

4、sqlplus / as sysdba方式进入sqlplus环境,通过startup pfile='$ORACLE_HOME/dbs/initorcl.ora'方式启动数据库。

******注意此时会报错****************************

ORA-01092: ORACLE instance terminated. Disconnection forced

ORA-00704: bootstrap process failure

ORA-39700: database must be opened with UPGRADE option

Process ID: 2774

Session ID: 125 Serial number: 5

5、以startup upgrade方式打开数据库。

转载地址:http://llmba.baihongyu.com/

你可能感兴趣的文章
报错:Invalid bound statement (not found)
查看>>
Linux GPT分区格式磁盘的相关操作
查看>>
通过Docker进程pid获取容器id
查看>>
L15.2 zabbix基础(2)组件说明介绍
查看>>
impdp 常见问题 10g/11g/12c 问题解决 ERIKXUE
查看>>
2013年1月工作小结 -- 上线后的懈怠
查看>>
敏捷宣言
查看>>
php Yii: 出现undefined offset 或者 undefined index解决方案
查看>>
Bash编程入门
查看>>
org.tinygroup.binarytree-二叉树
查看>>
5.6-全栈Java笔记:内部类的四种实现方式
查看>>
Linux微职位学习笔记-终端
查看>>
自己写了一个友盟推送的util
查看>>
Mapreduce 扫描hbase表建立solr索引
查看>>
RHEL 5.8 yum本地源
查看>>
Teams 新功能更新【五月底】Busy on Busy 忙线音
查看>>
orzdba安装与使用
查看>>
二叉搜索树的插入叶子结点的递归实现方法
查看>>
通过nginx配置不同二级域名代理多个系统
查看>>
linux基础篇-23,文件系统管理
查看>>