原创  重建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;


    至此,数据库已按新的参数运行。

发表于 @ 2008年06月11日 10:04:00 | 评论( loading... ) | 编辑| 举报| 收藏

旧一篇:用最简单的方法复制或迁移Oracle数据库 | 新一篇:错误823解决办法

  • 发表评论
  • 评论内容:
  •  
Copyright © haoxuan
Powered by CSDN Blog