oracle10 冷恢复到11g,oracle 11g数据库冷备与恢复

oracle 11g数据库冷备与恢复

版本:v1.0

作者:梁凯亮

E-mail:lkl_1981@163.com

QQ:37547134

日期:20012-0627

实验环境

硬件环境:x86_64位的虚拟机两台

操作系统:rhel 5.6 64位

oracle版本:oracle 11g企业版11.0.2.1 x86_64

实验目标

将现有的数据库通过冷备份,在新装操作系统上进行还原。

实验步骤

1.

首先shutdown immediate停止要冷备的数据库。

SQL>shutdown immediate

2.

备份oralce实例的启动文件。

在备份前我将不能编辑的spfile文件用命令生成了一个可以编辑的pfile文件。

SQL>create pfile from spfile;

生成的路径和spfile在一个目录下。

我的oracle启动文件的位置:/u01/oracle/database/db_1/dbs

反正也不大我将这个文件都备份了。

3.

导出创建controlfile的脚本。

先启动oracle数据库实例。

SQL >startup

导出创建controlfile脚本到trace文件。

SQL> alter database backup controlfile to trace;

我的trace目录是:/u01/oracle/database/diag/rdbms/orcl/orcl/trace

查看alert_orcl.log日志最后

alter database backup controlfile to trace

Backup controlfile written to trace file        /u01/oracle/database/diag/rdbms/orcl/orcl/trace/orcl_ora_4820.trc

Completed: alter database backup controlfile to trace

查看orcl_ora_4820.trc

STARTUP NOMOUNT

CREATE CONTROLFILE REUSE DATABASE "OEM" RESETLOGS  NOARCHIVELOG

MAXLOGFILES 16

MAXLOGMEMBERS 3

MAXDATAFILES 100

MAXINSTANCES 8

MAXLOGHISTORY 292

LOGFILE

GROUP 1 ‘D:\APP\SHUNZI\ORADATA\OEM\REDO01.LOG’  SIZE 50M BLOCKSIZE 512,

GROUP 2 ‘D:\APP\SHUNZI\ORADATA\OEM\REDO02.LOG’  SIZE 50M BLOCKSIZE 512,

GROUP 3 ‘D:\APP\SHUNZI\ORADATA\OEM\REDO03.LOG’  SIZE 50M BLOCKSIZE 512

– STANDBY LOGFILE

DATAFILE

‘D:\APP\SHUNZI\ORADATA\OEM\SYSTEM01.DBF’,

‘D:\APP\SHUNZI\ORADATA\OEM\SYSAUX01.DBF’,

‘D:\APP\SHUNZI\ORADATA\OEM\UNDOTBS01.DBF’,

‘D:\APP\SHUNZI\ORADATA\OEM\USERS01.DBF’,

‘D:\APP\SHUNZI\ORADATA\OEM\MGMT_ECM_DEPOT1.DBF’,

‘D:\APP\SHUNZI\ORADATA\OEM\MGMT.DBF’,

‘D:\APP\SHUNZI\ORADATA\OEM\MGMT_AD4J.DBF’

CHARACTER SET AL32UTF8

这个就是在新的平台下创建controlfile的脚本,注意和要还原的oracle路径保持一直。

(以下是还原操作)

4.

将initorcl.ora还原。

我的位置在:/u01/oracle/database/db_1/dbs/

5.

将备份的数据文件还原到controlfile指定的位置。

我的位置在:

/u01/oracle/database/oradata/orcl/

6.

复制controlfile文件。

查看initorcl .ora文件找到如下:

*.control_files='/u01/oracle/database/oradata/orcl/control01.ctl','/u01/oracle/database/flash_recovery_area/orcl/control02.ctl'

看到两个controlfile文件,这两个文件必须都存在如果不存在复制一个就好了。

7.

创建不存在的文件夹

查看initorcl .ora文件找到如下:

*.audit_file_dest='/u01/oracle/database/admin/orcl/adump'

如果没有这个文件需要创建一个,并赋给oracle的权限。

8.

创建sys的密码

[oracle@vm0 dbs]$ orapwd file=/u01/oracle/database/db_1/dbs/orapworc password=oradba  force=y

9.

netca创建数据库监听并启动

10.

启动oracle数据库

sqlplus /nolog

conn  sys/oradba as sysdba

如果不提示错误表示启动正常,还看一看以前的表和数据是否存在?

注意事项

1.

硬件的内存一定要一样,否则需要修改initorcl.ora中和内存相关的配置信息。

2.

注意将没有创建的文件夹创建好。

3.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值