控制文件多路复用

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

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册雅安服务器托管、营销软件、网站建设、蓝田网站维护、网站推广。

方法一:

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

SQL> show parameter control_files;

NAME                             TYPE                VALUE

--------------------      -----------       ------------------------------

control_files                     string           /u01/app/oracle/oradata/orcl/control01.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/control01.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/control01.ctl, 

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

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

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


分享文章:控制文件多路复用
转载注明:http://cdiso.cn/article/pcehcd.html

其他资讯