欢迎光临
我们一直在努力

控制文件多路复用

控制文件是oracle数据库中最重要的文件之一。它记录了数据库的名称及其他关键配置,也记录了当前数据库中所有的数据文件和日志文件的位置及状态等重要信息,是数据库启动过程中必须查找并且使用的关键文件。默认情况下,数据库中有两个控制文件,并且这两个控制文件的内容和大小一致。在生产环境中,一般会建设多个控制文件副本,分别放在不同磁盘上。需要注意的是,不管数据库有多少控制文件,数据库在启动时,会检查所有控制文件,这些控制文件的内容只有全部一致并且没有受损,数据库才能成功启动。

方法一:

  1. 查看数据库当前的控制文件

SQL> show parameter control_files;

NAME
                            TYPE
               VALUE

——————–      ———–       ——————————

control_files
                    string
          /u01/app/oracle/oradata/orcl/c
ontrol01.ctl, 

                                                          /u01/app/oracle/oradata/orcl/control02.ctl

    2. 修改控制文件 

SQL> alter system set control_files='/u01/app/oracle/oradata/orcl/control01.ctl','/u01/app/oracle/oradata/orcl/control02.ctl','/u01/app/oracle/control/control03.ctl' scope=spfile;

System altered.

   3.一致性关闭数据库

SQL> shutdown immediate;

   4.在操作系统复制控制文件到相应目录

[oracle@ymm oracle]$ cp /u01/app/oracle/oradata/orcl/control01.ctl /u01/app/oracle/control/control03.ctl

   5.启动数据库

SQL> startup;

   

   6.
查看数据库当前的控制文件

SQL> show parameter control_files;

NAME
   TYPE
     VALUE

———————-        ———–   ——————————

control_files
   string
   /u01/app/oracle/oradata/orcl/c
ontrol01.ctl,

                                                           /u01/app/oracle/oradata/orcl/control02.ctl,

                                                           /u01/app/oracle/control/control03.ctl

方法二:修改参数文件pfile

  1. 生成pfile参数文件   

SQL> show parameter spfile;

NAME
TYPE
VALUE

——————- ———–   ——————————————————————                      

spfile
string
/u01/app/oracle/product/11.2.0
/dbhome_1/dbs/spfileorcl.ora

SQL> create pfile from spfile;

File created.

默认情况下,pfile和spfile都存放在$ORACLE_HOME/dbs目录下。pfile以init开头,spfile以spfile开头。

     2.一致性关闭数据库

SQL> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

     3.修改pfile中控制文件参数

[oracle@ymm dbs]$ vi initorcl.ora


     4.复制控制文件副本

[oracle@ymm control]$ cp control03.ctl control04.ctl    –我是在相对路径下copy的,不需要加路径

[oracle@ymm control]$ ls

control03.ctl  control04.ctl

    5.重新生成spfile并启动数据库

SQL> create spfile from pfile;

File created.

SQL> startup;

ORACLE instance started.

Total System Global Area  730714112 bytes

Fixed Size
    2231952 bytes

Variable Size
  239075696 bytes

Database Buffers
  482344960 bytes

Redo Buffers
    7061504 bytes

Database mounted.

Database opened.

    6.查看控制文件情况

SQL> show parameter control_files;

NAME
 TYPE
    VALUE

——————– ———–    ——————————

control_files
string
  /u01/app/oracle/oradata/orcl/c
ontrol01.ctl, 

                                                  /u01/app/oracle/oradata/orcl/control02.ctl,

                                                 /u01/app/oracle/control/control03.ctl, 

                                                 /u01/app/oracle/control/control04.ctl

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。