注意:在复制控制文件前,需要一致性关闭数据库;
查询当前数据库控制文件路径,创建新目录,添加新路径至参数文件;
centos@SYS> select name from v$controlfile; NAME --------------------------------------------- /u01/app/oracle/oradata/centos/control01.ctl /u01/app/oracle/oradata/centos/control02.ctl centos@SYS> show parameter control; NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ control_file_record_keep_time integer 7 control_files string /u01/app/oracle/oradata/centos/control01.ctl, /u01/app/oracle/oradata/centos/control02.ctl control_management_pack_access string DIAGNOSTIC+TUNING centos@SYS> alter system set control_files='/u01/app/oracle/oradata/centos/control01.ctl','/u01/app/oracle/oradata/centos/control02.ctl','/u01/app/oracle/control/control03.ctl' scope=spfile; System altered. centos@SYS>
[oracle@centos ~]$ mkdir -p /u01/app/oracle/control [oracle@centos ~]$
一致性关闭数据库,并拷贝控制文件至新目录;
centos@SYS> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. centos@SYS> host [oracle@centos ~]$ cd /u01/app/oracle [oracle@centos oracle]$ ls admin cfgtoollogs checkpoints control diag flash oradata product [oracle@centos ~]$ cd /u01/app/oracle/oradata/centos [oracle@centos centos]$ ls control01.ctl redo02.log redo33.log redob1.log sysaux01.dbf temp01.dbf control02.ctl redo03.log redo44.log redoc1.log system01.dbf undotbs01.dbf example01.dbf redo11.log redo4.log redod1.log t1.dbf users01.dbf redo01.log redo22.log redoa1.log redod2.log t2.dbf [oracle@centos centos]$ cp control01.ctl /u01/app/oracle/control/control03.ctl [oracle@centos centos]$ cd /u01/app/oracle/control [oracle@centos control]$ ls control03.ctl [oracle@centos control]$
启库,查看新控制文件是否生效;
centos@SYS> startup ORACLE instance started. Total System Global Area 830930944 bytes Fixed Size 2257800 bytes Variable Size 536874104 bytes Database Buffers 289406976 bytes Redo Buffers 2392064 bytes Database mounted. Database opened. centos@SYS> centos@SYS> centos@SYS> select name from v$controlfile; NAME ---------------------------------------------- /u01/app/oracle/oradata/centos/control01.ctl /u01/app/oracle/oradata/centos/control02.ctl /u01/app/oracle/control/control03.ctl centos@SYS>