Oracle9i新特点-SPFILE的使用


Oracle9i新特点:SPFILE的使用

--How to backup and restore spfile and controlfile using autobackup option

Last Updated: Wednesday, 2004-10-27 0:40 Eygle

本文发表于itpub技术丛书《Oracle数据库DBA专题技术精粹》,未经许可,严禁转载本文.

原文出处:

http://www.eygle.com/faq/Oracle9i.New.Feature.Spfile.04.htm

六. SPFILE的备份与恢复

在本文开篇我们提到,Oracle把Spfile也纳入到Rman的备份恢复策略当中,如果你配置了控制文件自动备份(autoback),那么Oracle会
在数据库发生重大变化(如增减表空间)时自动进行控制文件及Spfile文件的备份。

下面我们来看一下这个过程:
a. 设置控制文件自动备份:

[oracle@jumper oracle]$ rman target /

Recovery Manager: Release 9.2.0.3.0 - Production

Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.

connected to target database: HSJF (DBID=1052178311)

RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;

using target database controlfile instead of recovery catalog
old RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP OFF;
new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
new RMAN configuration parameters are successfully stored

RMAN> exit

这个设置可以在数据库中通过如下方式查询得到:

[oracle@jumper bdump]$ sqlplus "/ as sysdba"

SQL*Plus: Release 9.2.0.3.0 - Production on Sat Jan 17 01:08:05 2004

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

Connected to:
Oracle9i Enterprise Edition Release 9.2.0.3.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.3.0 - Production

SQL> select * from v$rman_configuration;
CONF# NAME VALUE
---------- ------------------------- ----------
1 CONTROLFILE AUTOBACKUP ON

b. 记录数据库变化

SQL> create tablespace eygle
2 datafile '/data1/oracle/oradata/eygle01.dbf'
3 size 5M;

Tablespace created.

如果新创建一个表空间,这时候检查alert

  1<sid>.log文件,你可以在其中发现这样的备份信息:   
  2  
  3  
  4Sat Jan 17 00:55:57 2004   
  5Starting control autobackup   
  6Control autobackup written to DISK device   
  7handle '/opt/oracle/product/9.2.0/dbs/c-1052178311-20040117-00'   
  8Completed: create tablespace eygle   
  9datafile '/data1/oracle/oradata/eygle01.dbf’   
 10  
 11  
 12  
 13如果使用rman进行备份,在提示中你可以看到如下信息:   
 14  
 15  
 16  
 17RMAN&gt; configure controlfile autobackup on;   
 18  
 19old RMAN configuration parameters:   
 20CONFIGURE CONTROLFILE AUTOBACKUP OFF;   
 21new RMAN configuration parameters:   
 22CONFIGURE CONTROLFILE AUTOBACKUP ON;   
 23new RMAN configuration parameters are successfully stored   
 24  
 25RMAN&gt; run   
 262&gt; {   
 273&gt; allocate channel ch1 type disk format='e:\oracle\orabak\penny%t.arc';   
 284&gt; backup archivelog all delete all input;   
 295&gt; release channel ch1;   
 306&gt; }   
 31  
 32allocated channel: ch1   
 33channel ch1: sid=13 devtype=DISK   
 34  
 35Starting backup at 02-DEC-03   
 36current log archived   
 37channel ch1: starting archive log backupset   
 38channel ch1: specifying archive log(s) in backup set   
 39input archive log thread=1 sequence=63 recid=168 stamp=511712617   
 40input archive log thread=1 sequence=64 recid=169 stamp=511712620   
 41input archive log thread=1 sequence=65 recid=170 stamp=511712626   
 42input archive log thread=1 sequence=66 recid=171 stamp=511712690   
 43channel ch1: starting piece 1 at 02-DEC-03   
 44channel ch1: finished piece 1 at 02-DEC-03   
 45piece handle=E:\ORACLE\ORABAK\PENNY511712693.ARC comment=NONE   
 46channel ch1: backup set complete, elapsed time: 00:00:03   
 47channel ch1: deleting archive log(s)   
 48archive log filename=E:\ORACLE\ORADATA\PENNY\ARCHIVE_63.DBF recid=168 stamp=511712617   
 49archive log filename=E:\ORACLE\ORADATA\PENNY\ARCHIVE_64.DBF recid=169 stamp=511712620   
 50archive log filename=E:\ORACLE\ORADATA\PENNY\ARCHIVE_65.DBF recid=170 stamp=511712626   
 51archive log filename=E:\ORACLE\ORADATA\PENNY\ARCHIVE_66.DBF recid=171 stamp=511712690   
 52Finished backup at 02-DEC-03   
 53  
 54Starting Control File and SPFILE Autobackup at 02-DEC-03   
 55piece handle=E:\ORACLE\ORA92\DATABASE\C-3627775766-20031202-01 comment=NONE   
 56Finished Control File and SPFILE Autobackup at 02-DEC-03   
 57  
 58released channel: ch1   
 59  
 60  
 61  
 62  
 63  
 64我们简单看一下自动备份的控制文件及spfile文件的格式及命名规则:   
 65c-IIIIIIIIII-YYYYMMDD-QQ   
 66c ------------------------控制文件   
 67IIIIIIIIII---------DBID   
 68YYYYMMDD------------时间戳   
 69QQ----------------------序号00-FF,16进制表示   
 70  
 71  
 72  
 73c. 使用自动备份恢复spfile文件   
 74  
 75  
 76  
 77  
 78  
 79[oracle@jumper bdump]$ rman target /   
 80  
 81Recovery Manager: Release 9.2.0.3.0 - Production   
 82  
 83Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.   
 84  
 85connected to target database: HSJF (DBID=1052178311)   
 86  
 87RMAN&gt; restore spfile to '/tmp/spfileeygle.ora' from autobackup;   
 88  
 89Starting restore at 17-JAN-04   
 90  
 91using target database controlfile instead of recovery catalog   
 92allocated channel: ORA_DISK_1   
 93channel ORA_DISK_1: sid=18 devtype=DISK   
 94channel ORA_DISK_1: looking for autobackup on day: 20040117   
 95channel ORA_DISK_1: autobackup found: c-1052178311-20040117-01   
 96channel ORA_DISK_1: SPFILE restore from autobackup complete   
 97Finished restore at 17-JAN-04   
 98  
 99RMAN&gt; exit   
100  
101  
102Recovery Manager complete.   
103[oracle@jumper bdump]$ ls -l /tmp/spfileeygle.ora   
104-rw-r----- 1 oracle dba 3584 1月 17 09:34 /tmp/spfileeygle.ora   
105  
106  
107  
108你同样可以通过这种方法恢复控制文件,示例如下:   
109  
110  
111  
112  
113  
114[oracle@jumper bdump]$ rman target /   
115  
116Recovery Manager: Release 9.2.0.3.0 - Production   
117  
118Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.   
119  
120connected to target database: HSJF (DBID=1052178311)   
121  
122RMAN&gt; restore controlfile to '/tmp/control01.ctl' from autobackup;   
123  
124Starting restore at 17-JAN-04   
125  
126using target database controlfile instead of recovery catalog   
127allocated channel: ORA_DISK_1   
128channel ORA_DISK_1: sid=10 devtype=DISK   
129channel ORA_DISK_1: looking for autobackup on day: 20040117   
130channel ORA_DISK_1: autobackup found: c-1052178311-20040117-02   
131channel ORA_DISK_1: controlfile restore from autobackup complete   
132Finished restore at 17-JAN-04   
133  
134RMAN&gt; exit   
135  
136  
137Recovery Manager complete.   
138[oracle@jumper bdump]$ ls -l /tmp/control*   
139-rw-r----- 1 oracle dba 1892352 1月 17 09:44 /tmp/control01.ctl   
140  
141  
142  
143Oracle9i自动备份控制文件的功能给我们带来了极大的收益,通过自动备份,在数据库出现紧急状况的时候,你可能可以从这个自动备份中获得更   
144为有效及时的控制文件.   
145  
146缺省的,这个自动备份功能是关闭的,你可以用我们上面提到的方法打开该功能.   
147  
148  
149  
150  
151  
152&lt;&lt;上一页 下一页&gt;&gt;   
153  
154  
155  
156本文作者:   
157eygle,Oracle技术关注者,来自中国最大的Oracle技术论坛itpub.   
158www.eygle.com是作者的个人站点.你可通过[email protected]来联系作者.欢迎技术探讨交流以及链接交换.   
159  
160原文出处:   
161  
162http://www.eygle.com/faq/Oracle9i.New.Feature.Spfile.04.htm</sid>
Published At
Categories with 数据库类
Tagged with
comments powered by Disqus