05:55:48 SQL> select name from v$controlfile;
NAME
------------------------------------------------------------------------------------------------------ ------------------------------------------------
/u01/app/oracle/oradata/lx02/control01.ctl
05:56:45 SQL> show parameter contro
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time integer 7
control_files string /u01/app/oracle/oradata/lx02/c
ontrol01.ctl
05:56:49 SQL> show parameter spfile;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string /u01/app/oracle/product/10.2.0
/db_1/dbs/spfilelx02.ora
05:57:00 SQL>
05:57:55 SQL> alter system set control_files=
05:58:01 2 '/u01/app/oracle/oradata/lx02/control01.ctl','/disk1/lx02/oradata/control02.ctl' scope=spfile;
System altered.
05:58:29 SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
05:59:02 SQL> !
[oracle@oracle ~]$ cp /u01/app/oracle/oradata/lx02/control01.ctl /disk1/lx02/oradata/control02.ctl
05:59:44 SQL> select name from v$controlfile;
NAME
--------------------------------------------
/disk1/lx02/oradata/control02.ctl
06:01:16 SQL> startup pfile=$ORACLE_HOME/dbs/initlx02.ora
ORACLE instance started.
Total System Global Area 176160768 bytes
Fixed Size 1218364 bytes
Variable Size 88082628 bytes
Database Buffers 83886080 bytes
Redo Buffers 2973696 bytes
Database mounted.
Database opened.
06:01:43 SQL> show parameter spfile;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string
06:02:15 SQL> select name from v$controlfile;
NAME
----------------------------------------------------------------
/u01/app/oracle/oradata/lx02/control01.ctl
06:02:21 SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
[oracle@oracle ~]$ cd $ORACLE_HOME/dbs
[oracle@oracle dbs]$ vi initlx02.ora
control_files = $ORACLE_BASE/oradata/lx02/control01.ctl,/disk1/lx02/oradata/control02.ctl,/disk2/lx02/oradata/control03 .ctl
[oracle@oracle dbs]$ cp $ORACLE_BASE/oradata/lx02/control01.ctl /disk1/lx02/oradata/control02.ctl
[oracle@oracle dbs]$ cp $ORACLE_BASE/oradata/lx02/control01.ctl /disk2/lx02/oradata/control03.ctl
06:07:59 SQL> startup pfile=$ORACLE_HOME/dbs/initlx02.ora
ORACLE instance started.
Total System Global Area 176160768 bytes
Fixed Size 1218364 bytes
Variable Size 88082628 bytes
Database Buffers 83886080 bytes
Redo Buffers 2973696 bytes
Database mounted.
Database opened.
06:08:21 SQL> show parameter spfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string
06:08:30 SQL> select name from v$controlfile;
NAME
------------------------------------------------------------------------------------------------------ ------------------------------------------------
/u01/app/oracle/oradata/lx02/control01.ctl
/disk1/lx02/oradata/control02.ctl
/disk2/lx02/oradata/control03.ctl
06:08:39 SQL> create spfile from pfile;
File created.
需要注意:多元化了控制文件后,如果某个控制文件丢失或损坏,数据库将无法加载。
如果要改变数据库名称或数据库的永久参数,必须重新建立控制文件。