今天进行了控制文件的多路复用的联系操作
1.
show parameter control_files
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
control_files string /u01/app/oracle/oradata/ENMOED
U/control01.ctl, /u01/app/orac
le/fast_recovery_area/ENMOEDU/
control02.ctl
可以看出我的控制文件在两个不同的路径下面
2.
alter system set
alter system set control_files='
/u01/app/oracle/oradata/ENMOEDU/control01.ctl, /u01/app/orac',
' /u01/app/oracle/fast_recovery_area/ENMOEDU/control02.ctl',
'/u01/app/oracle/oradata/ENMOEDU/control103.ctl';
我们添加一路控制文件复用
3.然后在操作系统相对应路径 复制控制文件
[oracle@ENMOEDU ENMOEDU]$ pwd
/u01/app/oracle/oradata/ENMOEDU
[oracle@ENMOEDU ENMOEDU]$ ls
control01.ctl enmoedubig.dbf redo03.log temp01.dbf
EDNMOEDU02.dbf redo01.log sysaux01.dbf undotbs01.dbf
ENMOEDU01.dbf redo02.log system01.dbf users01.dbf
[oracle@ENMOEDU ENMOEDU]$ cp control01.ctl control03.ctl
[oracle@ENMOEDU ENMOEDU]$ ls
control01.ctl ENMOEDU01.dbf redo02.log system01.dbf users01.dbf
control03.ctl enmoedubig.dbf redo03.log temp01.dbf
EDNMOEDU02.dbf redo01.log sysaux01.dbf undotbs01.dbf
4.此时我们的控制文件的多路复用就好了,但是我们用些人不知道的是 ,我们为了整理测试环境会去删除掉操作系统新添加的控制文件,而在数据库方面还在记录着我们的控制文件的信息,此时呢我们关闭数据库的时候数据库就报错了!
有两种情况
1关闭数据库报错
解决方法:
首先我们 alter system set
alter system set control_files=' /u01/app/oracle/oradata/ENMOEDU/control01.ctl, /u01/app/orac',
' /u01/app/oracle/fast_recovery_area/ENMOEDU/control02.ctl',
然后数据库就可以正常关闭了
2当我们数据库 不小心 abort 了
我们启动数据库就报错
我们首先启动数据库到 nomount
create pfile from spfile
修改pfile 参数文件 然后删除spfile
再启动数据库 就可以了
!
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30176559/viewspace-1668475/
,如需转载,请注明出处,否则将追究法律责任。