ORACLE控制文件的重建

oracle|控制

数据库系统运行一段时间后有很多参数需要调整,有些参数可在$ORACLE_HOME/dbs/initXXX.ora文件中调整,而有些参数必须要在ORACLE的控制文件中调整。如ORACLE的缺省数据文件个数为30个,在系统需要扩表空间而数据文件个数不够时就需要进行调整。
一种方法是将所有数据全倒出来,重建库,再将数据倒进出。这种方法较麻烦。
二种方法是只重建控制文件,因为数据文件个数的限制参数存放在控制文件中。
以下是一种较好的重建控制文件的方法:
1. 备份数据库中的数据,以防不测。
2. svrmgrl
3. svrmgrl>connect internal
4. svrmgrl>alter database backup controlfile to trace; 备份控制文件
5. 在/home/oracle//admin/ora7/udump下可找到最新生成的TRACE文件,假设为ora_15269.trc,此文件就包含了当前控制文件的参数及生成语法。
6. 提取ora_15269.trc中有关控制文件生成的语句另存为creatctl.sql。
7. creatctl.sql的内容为:
  STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "ORA7" NORESETLOGS NOARCHIVELOG
    MAXLOGFILES 32
    MAXLOGMEMBERS 2
    MAXDATAFILES 50
    MAXINSTANCES 8
    MAXLOGHISTORY 800
LOGFILE
GROUP 1 '/dev/vg00/roraredoa1'  SIZE 500K,
GROUP 2 '/dev/vg00/roraredoa2'  SIZE 500K,
  GROUP 3 '/dev/vg00/roraredoa3'  SIZE 500K
DATAFILE
  '/dev/vg00/rorasys',
  '/dev/vg00/rorarbs',
  '/dev/vg00/roratemp',
  '/dev/vg00/roratools',
  '/dev/vg00/rorauser'

8. 可按自己的需要编辑creatctl.sql中的参数,如maxdatafiles、maxinstances等。
9. svrmgrl
10. svrmgrl>connect internal
11. svrmgrl>shutdown immediate
12. svrmgrl>@creatctl.sql
13. svrmgrl>alter database open;
此时数据库已按新的参数运行。

时间: 2024-12-08 16:33:06

ORACLE控制文件的重建的相关文章

oracle,控制文件的重建必须是在nomount的状态下进行?

问题描述 oracle,控制文件的重建必须是在nomount的状态下进行? oracle,控制文件的重建必须是在nomount的状态下进行

Oracle控制文件的重建方法

场景:存储介质被破坏,造成控制文件丢失,需更换硬盘,并重新建立控制文件. (1)修改初始化参数control_files,改变控制文件位置 SQL> ALTER  SYSTEM  SET  CONTROL_FILES='/disk1/oradata/control01.ctl','/disk2/oradata/control.ctl'  scope=spfile; (2)关闭数据库 SQL>shutdown  immediate (3)启动实例 SQL>startup   nomount

Oracle 控制文件(CONTROLFILE)

--============================= -- Oracle 控制文件(CONTROLFILE) --=============================   一.Oracle 控制文件         为二进制文件,初始化大小由CREATE DATABASE指定,可以使用RMAN备份         记录了当前数据库的结构信息,同时也包含数据文件及日志文件的信息以及相关的状态,归档信息等等         在参数文件中描述其位置,个数等等.通常采用分散放开,多路复用

Oracle控制文件损坏

现象是系统无法登录,任何用户都不行,怀疑数据库有问题,进入服务器,运行sqlplus username/password,无法进入数据库,提示输入用户名. 重启数据库,报控制文件control01.ctl有错,由于Oracle控制文件都是镜像的,因此先试着拷贝control03.ctl 覆盖control01.ctl,提示无法覆盖. 输入命令:sqlplus / as sysdba进入数据库,用命令shutdown immediate关闭数据库,然后将control01.ctl 重命名为cont

oracle控制文件损坏的恢复过程记录

曾经做过一些测试,在启动或关闭数据库的情况下删除了控制文件,由于这个数据库只是我自己使用的测试数据库,当时也没有在意去恢复. 今天想启动这个数据库的时候就碰到了问题: [oracle@bjtest ~]$ sqlplus "/ as sysdba" SQL*Plus: Release9.2.0.4.0 - Production on星期三6月3 01:47:42 2009 Copyright (c) 1982, 2002, Oracle Corporation.  All rights

异常断电导致ORACLE控制文件等受到破坏的处理

故障现象:客户某台WINDOWS服务器掉电,ORACLE数据库STARTUP提示控制文件CONTROL01.CTL.CONTROL02.CTL被破坏. 一.处理控制文件异常故障 方法:直接拷贝CONTROL03.CTL到CONTROL01.CTL,保险起见可以拷贝一个备份放 二.尝试启动 1.startup,碰到ORA-01172.ORA-01151错误 SQL> startup; ORACLE 例程已经启动. Total System Global Area  612368384 bytes

Oracle控制文件的备份方法

备份控制文件的原则是:在数据库物理结构发生变化后备份控制文件. 1.trace :用于控制文件重建 (生成的trace文件在udump) SQL> alter database backup controlfile to trace; Database altered. 以下是控制文件的备份: CREATE CONTROLFILE REUSE DATABASE "LX01" NORESETLOGS  ARCHIVELOG MAXLOGFILES 16 MAXLOGMEMBERS

浅谈Oracle控制文件多元化

控制文件多元化:就是复制多个控制文件并存放到不同的磁盘. 1.使用SPFILE多元化控制文件 1)查看控制文件信息和spfile 信息 05:55:48 SQL> select name from v$controlfile; NAME ----------------------------------------------------------------------------------------- ------------- ---------------------------

Oracle控制文件的功能和特点

1.控制文件的功能和特点 1)定义数据库当前物理状态 2)维护数据的一致性:如果控制文件中的检查点与数据文件中的一 致,则说明数据一致,可以启动到open状态) 查看数据一致性的方法: SQL> select file#,checkpoint_change# from v$datafile;[从控制文件读取] FILE# CHECKPOINT_CHANGE# ---------- ------------------ 1             172373 2             1723