ITPub博客

首页 > 数据库 > Oracle > 为rac数据库增加控制文件

为rac数据库增加控制文件

原创 Oracle 作者:crystal_ocean 时间:2014-03-20 17:08:04 0 删除 编辑
作为dba,我们都知道控制文件的重要性,控制文件一旦损坏或者丢失,就需要从建控制文件,为避免控制文件单点故障,我们一般会增加控制文件至2个或者3个,这几个控制文件互为镜像。那么接下就为大家演示一下增加控制文件的方法。

一、停止数据库集群,在此使用srvctl命令
[oracle@node2]$ srvctl stop instance -d racdb -i racdb1,racdb2 -o immediate

停库之后,查看crs状态
[oracle@node2 ~]$ crs_stat -t
Name           Type           Target    State     Host        
------------------------------------------------------------
ora....SM2.asm application    ONLINE    ONLINE    node1       
ora....E1.lsnr application    ONLINE    ONLINE    node1       
ora.node1.gsd  application    ONLINE    ONLINE    node1       
ora.node1.ons  application    ONLINE    ONLINE    node1       
ora.node1.vip  application    ONLINE    ONLINE    node1       
ora....SM1.asm application    ONLINE    ONLINE    node2       
ora....E2.lsnr application    ONLINE    ONLINE    node2       
ora.node2.gsd  application    ONLINE    ONLINE    node2       
ora.node2.ons  application    ONLINE    ONLINE    node2       
ora.node2.vip  application    ONLINE    ONLINE    node2       
ora.racdb.db   application    OFFLINE   OFFLINE               
ora....b1.inst application    OFFLINE   OFFLINE               
ora....b2.inst application    OFFLINE   OFFLINE         

二、启动数据库到nomount状态
[oracle@node2 ~]$ srvctl start database -d racdb  -o nomount

启动之后,查看数据库状态
SQL> select INSTANCE_NAME,HOST_NAME,STATUS from gv$instance;

INSTANCE_NAME    HOST_NAME            STATUS
---------------- -------------------- ------------
racdb1           node2.ocean.com      STARTED
racdb2           node1.ocean.com      STARTED

三、登录到rman,从现有的控制文件复制出新的控制文件
[oracle@node2 ~]$ rman target / nocatalog

RMAN> restore controlfile to '+DATA/racdb/controlfile/control_2' from '+DATA/racdb/controlfile/current.256.842559447';
Starting restore at 20-MAR-14
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=146 instance=racdb1 devtype=DISK

channel ORA_DISK_1: copied control file copy
Finished restore at 20-MAR-14

四、登录到数据库,修改参数
SQL> alter system set control_files='+DATA/racdb/controlfile/control_2','+DATA/racdb/controlfile/current.256.842559447'
 scope=spfile;


System altered.

五、再次停止数据库,因为control_files静态参数,修改之后要重启实例才能生效。
[oracle@node2 ~]$ srvctl stop instance -d racdb -i racdb1,racdb2 -o immediate

六、启动集群数据库
[oracle@node2 ~]$ srvctl start database -d racdb

七、验证结果,查看control_files参数
SQL> show parameter control

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time        integer     7
control_files                        string      +DATA/racdb/controlfile/contro
                                                 l_2, +DATA/racdb/controlfile/c
                                                 urrent.256.842559447

此时我们已经增加了control_2这个控制文件。

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

请登录后发表评论 登录
全部评论

注册时间:2014-01-23

  • 博文量
    13
  • 访问量
    90951