oracle重建控制文件


oracle重建控制文件

ORACLE的控制文件是数据库的非常重要的文件,它保存着数据库的连接实例(instance)和database的一个桥梁,它定义了当前数据库物理信息的状态。因此控制文件对于一个数据库来说是非常重要的,在某些时候我们需要重新创建控制文件:
1.当控制文件丢失的时候,并且没有最近的文件Copy备份(一般在建库完成后的生成一个创建ControlFile的的脚本)。
2.需要修改数据库初始物理信息,如Log文件数量,数据文件的数量等,这些信息是在建库的时候写在ControlFIle里的,如果需要修改,可以通过重建ControlFile来调整。  

以下是一种较好的重建控制文件的方法:  

1. 在重建Contrlfile前,建议备份数据库中的数据,以防不测。  
2. sqlplus /nolog  
3. SQL>connect /as sysdba  
4. SQL>alter database backup controlfile to trace; 备份创建控制文件的脚本到TRC文件  
5. 在$ORACLE_HOME/admin/SID/udump下可找到最新生成的TRACE文件,如ora_23456.trc,此文件就包含了当前控制文件的参数及生成语法。  
6. 提取ora_23456.trc中有关控制文件生成的语句另存为recreatctl.sql。
  
7. recreatctl.sql的内容为:  
STARTUP NOMOUNT  
CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS NOARCHIVELOG  
MAXLOGFILES 32  
MAXLOGMEMBERS 2  
MAXDATAFILES 50  
MAXINSTANCES 8  
MAXLOGHISTORY 800  
LOGFILE  
GROUP 1 '/dev/vg00/roraredoa1' SIZE 10M,  
GROUP 2 '/dev/vg00/roraredoa2' SIZE 10M,  
GROUP 3 '/dev/vg00/roraredoa3' SIZE10M  
DATAFILE  
'/dev/vg00/rorclsys',  
'/dev/vg00/rorclrbs',  
'/dev/vg00/rorcltemp',  
'/dev/vg00/rorcltools',  
'/dev/vg00/rorcluser'  
;  

8. 如果需要修改,可按自己的需要编辑creatctl.sql中的参数,如maxdatafiles、maxinstances等。  
9. sqlplus /nolog  
10. SQL>connect /as sysdba  
11. SQL>shutdown immediate  
12. SQL>@recreatctl.sql  
13. SQL>alter database open;重新建控制文件完毕。

控制文件对于数据库来说是非常重要的数据结构,在进行数据恢复时通常是必不可少的.
Oracle提供两种方式备份控制文件:
1.生成可以重建控制文件的脚本
2.备份二进制的控制文件

我们看一下如何获得可以重建控制文件的脚本.

Oracle提供如下命令:
alter database backup controlfile to trace;

实际操作:
[oracle@standby tools]$ sqlplus "/ as sysdba"

SQL*Plus: Release 9.2.0.4.0 - Production on Sat Oct 16 08:56:13 2004

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

Connected to:
Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
With the Partitioning option
JServer Release 9.2.0.4.0 - Production

SQL> alter database backup controlfile to trace;

Database altered.

SQL> @gettrcname

TRACE_FILE_NAME
--------------------------------------------------------------------------------
/opt/oracle/admin/primary/udump/primary_ora_2135.trc

trace文件内容:
[oracle@standby tools]$ more /opt/oracle/admin/primary/udump/primary_ora_2135.trc
/opt/oracle/admin/primary/udump/primary_ora_2135.trc
Orac
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值