RMAN恢复(从文件系统到裸设备)
需要注意的是使用裸设备之前,看下数据文件的大小,是否自动扩展,关闭自动扩展或者设置maxsize。
Select * from dba_data_files;
Alter database datafile ‘’ autoextend off;
Alter database datafile '' autoextend on maxsize 499M;
Alter database tempfile '' autoextend on maxsize 499M; 建立rawdevice时参考数据文件大小,设置比数据文件大1M就可以。
测试RMAN的恢复,orcl目录下数据文件,控制文件,联机日志文件,临时TEMP文件全部删除,pfile保留
SQL> create pfile from spfile; SQL>shutdown immediate
[oracle@SMART oradata]$ rm -fr orcl
编辑control_files参数为新文件位置:
[oracle@SMART dbs]$ vi initorcl.ora
从pfile启动数据库nomount:
SQL> startup pfile=?/dbs/initorcl.ora nomount 还原控制文件到新位置:
RMAN> restore controlfile from autobackup; 启动到mount:
SQL> alter database mount;
运行RMAN进行还原文件:to后路径为指向裸设备的软连接 RUN{
SET NEWNAME FOR DATAFILE 1 TO '/oracle/orcl/system01.dbf'; SET NEWNAME FOR DATAFILE 2 TO '/oracle/orcl/undotbs01.dbf'; SET NEWNAME FOR DATAFILE 3 TO '/oracle/orcl/sysaux01.dbf'; SET NEWNAME FOR DATAFILE 4 TO '/oracle/orcl/users01.dbf'; SET NEWNAME FOR DATAFILE 5 TO '/oracle/orcl/system02.dbf'; SET NEWNAME FOR DATAFILE 6 TO '/oracle/orcl/test.dbf';
SQL \DATABASE RENAME FILE ''/oradata/orcl/redo01.log'' TO ''/oracle/orcl/redo01.log''\
SQL \DATABASE RENAME FILE ''/oradata/orcl/redo02.log'' TO ''/oracle/orcl/redo02.log''\RESTORE DATABASE;
11
SWITCH DATAFILE ALL; }
恢复数据库:
RMAN> recover database;
输出如下:
Starting recover at 27-NOV-11 using channel ORA_DISK_1 starting media recovery unable to find archive log
archive log thread=1 sequence=35 RMAN-00571:
=========================================================== RMAN-00569: ===== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571:
=========================================================== RMAN-03002: failure of recover command at 11/27/2011 22:21:22
RMAN-06054: media recovery requesting unknown log: thread 1 seq 35 lowscn 725460
因为最近归档日志的序列为34,35是联机日志序列还没有归档,故提示需要序列35的日志文件。所以恢复出来的数据库丢失联机日志文件(sequence=35)中内容
采用resetlog方式打开数据库
SQL> alter database open resetlogs;
SQL> CREATE spfile from pfile='?/dbs/initorcl.ora';
SQL> Alter database rename file '/oradata/orcl/temp01.dbf' to '/oracle/orcl/temp01.dbf'; SQL>Shutdown immediate SQL>Startup
检查文件位置
select * from v$logfile
select * from dba_temp_files select * from dba_data_files select * from v$controlfile
备注:tempile处理的不是很好,经查看RMAN备份advanced guide: RMAN > run {
set newname for tempfile 1 to '+DISK'; set newname for tempfile 2 to '+DISK'; ...
switch tempfile all; }
可以尝试将以上内容在recover database后执行或者在run的运行脚本中添加,+DISK表示为采用ASM方式,直接将+DISK换成裸设备路径,运行后查看dba_temp_files验
12
证。
ASM实例配置和迁移 ASM实例安装
查看 kernel version 和系统架构
[root@SMART asm_install]# uname -rm 2.6.18-164.el5 i686
根据当前系统32位和版本号下载安装包
http://www.oracle.com/technology/tech/linux/asmlib/index.html
version 是ASM library driver的版本号, arch是系统架构,kernel是系统kernel oracleasm-support-version.arch.rpm oracleasm-kernel-version.arch.rpm oracleasmlib-version.arch.rpm
[root@SMART asm_install]# ls
oracleasm-2.6.18-164.el5-2.0.5-1.el5.i686.rpm oracleasmlib-2.0.4-1.el5.i386.rpm
oracleasm-support-2.1.7-1.el5.i386.rpm
[root@SMART asm_install]# rpm -Uvh oracleasm*
[root@SMART asm_install]# /etc/init.d/oracleasm configure 运行 oracleasm configure初始化配置脚本:
为ASM 准备磁盘组diskgroup成员
[root@SMART ~]# lvcreate -L 1g -n lvasm01 vg_ora [root@SMART ~]# lvcreate -L 2g -n lvasm02 vg_ora
13
[root@SMART ~]# lvcreate -L 4g -n lvasm04 vg_ora
[root@SMART mapper]# vi /etc/rc.local 加入以下命令进行修改权限
chown oracle:dba /dev/mapper/vg_ora-lvasm04 chown oracle:dba /dev/mapper/vg_ora-lvasm02 chown oracle:dba /dev/mapper/vg_ora-lvasm01
创建一个DISK
[root@SMART ~]# oracleasm createdisk disk01 /dev/vg_ora/lvasm01 Writing disk header: done Instantiating disk: done
安装ASM软件:
[oracle@SMART ~]$ export DISPLAY=:0.0 [oracle@SMART ~]$ dbca 选择“配置ASM”项,提示
运行localconfig add配置启动CSS [root@SMART bin]# ./localconfig add 显示如下
/etc/oracle does not exist. Creating it now.
Successfully accumulated necessary OCR keys. Creating OCR keys for user 'root', privgrp 'root'.. Operation successful.
Configuration for local CSS has been initialized
Adding to inittab
Startup will be queued to init within 30 seconds. Checking the status of new Oracle init process...
Expecting the CRS daemons to be up within 600 seconds. CSS is active on these nodes. smart
CSS is active on all nodes.
Oracle CSS service is installed and running under init(1M)
14
继续安装,输入ASM实例的sys密码:
可以通过ASM parameters查看或者修改默认设置的ASM实例的参数 选择“create new”创建磁盘组
输入diskgroup名,Redundancy表示是否采用镜像copy。 ■ External redundancy 不采用镜像配置
■ Normal redundancy 默认为数据文件采用two-way mirroring和控制文件three-way mirroring;至少2个LV或者磁盘
■ High redundancy 默认为three-way mirrored至少3个LV
15