“手工”创建控制文件

【实验环境】

平台: CentOS5.5 + Oracle 11g R2

ORACLE_BASE=/u01

ORACLE_HOME=/u01/oracle

ORACLE_SID=Instance02

将原来位于“/u01/oradata/orcl02/”目录下的三个控制文件(control01.ctl, control02.clt, control02.ctl)删除,并且在目录“/u01/oracle/dbs/”目录下创建3个控制文件(control01.ctl, control02.clt, control02.ctl)

 

 

Step 1 修改spfilecontrolf_files参数,并且重启实例到nomount状态,使修改后的参数生效。

修改control_files 初始化参数。

SQL> alter system set control_files='/u01/oracle/dbs/control01.ctl','/u01/oracle/dbs/control02.ctl','/u01/oracle/dbs/control03.ctl' scope=spfile

 

重启数据库实例到nomount状态,使得修改后的参数control_files生效。

SQL> shutdown immediate;

SQL> startup nomount;

 

Step 2 nomount状态下,编辑“CREATE CONTROLFILE”命令,并运行。

CREATE CONTROLFILE REUSE DATABASE "orcl02" NORESETLOGS NOARCHIVELOG

MAXLOGFILES 8

MAXLOGMEMBERS 4

MAXLOGHISTORY 1

MAXDATAFILES 100

MAXINSTANCES 4

LOGFILE

GROUP 1 ('/u01/oradata/orcl02/redo01.log','/u01/redo01.log') SIZE 50M BLOCKSIZE 512,

GROUP 2 ('/u01/oradata/orcl02/redo02.log','/u01/redo02.log') SIZE 50M BLOCKSIZE 512

DATAFILE

'/u01/oradata/orcl02/system01.dbf',

'/u01/oradata/orcl02/sysaux01.dbf',

'/u01/oradata/orcl02/users01.dbf',

'/u01/oradata/orcl02/undo01.dbf'

CHARACTER SET US7ASCII;

 

Control file created

 

说明控制文件创建成功

 

注意

     将命令存储在脚本文件当前目录下的“create_control_file_scripts.sql

     命令中涉及的日志文件,system01数据文件,sysaux01数据文件等可以参考“创建数据库”命令中的信息。

 

Step 3:将数据库启动到open状态。

 

CREATE CONTROLFILE”命令具有潜在损坏数据文件和联机重做日志文件的作用,在使用之前应该对数据库进行“完全脱机备份”,否则,在使用“alter database open”命令时,就会出现如下错误:

SQL > alter database open

alter database open

*

ERROR at line 1:

ORA-01113: file 1 needs media recovery

ORA-01110: data file 1: '/u01/oradata/orcl02/system01.dbf'

 

【解决方法】

SQL> RECOVER DATAFILE '/oradata/exprd/system01.dbf'
Media recovery complete.
SQL> RECOVER DATABASE;
Media recovery complete.
SQL> ALTER DATABASE OPEN;
Database altered.

 

 

Step 4重建临时表空间中的临时数据文件。

 

SQL > alter tablespace temptbs01 add tempfile '/u01/oradata/orcl02/temptbs01.dbf' size 50M reuse

 

注意

对比CREATE DATABAE语句中的“数据文件”和控制文件跟踪备份的trace文件中的“数据文件”可知,后者没有“临时数据文件”,因此在创建完控制文件后,还要给“temp表空间(临时表空间)”添加数据文件。

 

 

读者如要转载,请标明出处和作者名,谢谢。

地址:http://space.itpub.net/25851087

作者名:zjrodger

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25851087/viewspace-763894/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/25851087/viewspace-763894/

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值