alter system set control_files =

oracle 官方文档关于修改控制文件的描述,个人觉得有点问题,应该先shutdown 数据库,然后再copy文件

To add a multiplexed copy of the current control file or to rename a control file:

  1. Shut down the database.

  2. Copy an existing control file to a new location, using operating system commands.

  3. Edit the CONTROL_FILES parameter in the database initialization parameter file to add the new control file name, or to change the existing control filename.

  4. Restart the database.

 

SQL> show parameter control_files;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
control_files                        string      /u01/oracle/oradata/stone/cont
                                                 rol01.ctl, /u01/oracle/oradata
                                                 /stone/control02.ctl, /u01/ora
                                                 cle/oradata/stone/control03.ct
                                                 l
SQL>
SQL> !cp /u01/oracle/oradata/stone/control01.ctl /u01/control04.ctl

 

SQL> alter system set control_files = '/u01/control04.ctl','/u01/oracle/oradata/stone/control01.ctl','/u01/oracle/oradata/stone/control02.ctl' scope=spfile;

System altered.

SQL> shutdown immediate


Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> SQL> SQL>
SQL>
SQL>
SQL>
SQL> startup
ORACLE instance started.

Total System Global Area  297795584 bytes
Fixed Size                  1219040 bytes
Variable Size              96470560 bytes
Database Buffers          192937984 bytes
Redo Buffers                7168000 bytes
Database mounted.
ORA-01122: database file 1 failed verification check
ORA-01110: data file 1: '/u01/oracle/oradata/stone/system01.dbf'
ORA-01207: file is more recent than control file - old control file


SQL> select status from v$instance;

STATUS
------------
MOUNTED

 

 

 

 

 

要指定scope=spfile 

 

SQL> alter system set control_files = '/u01/control04.ctl,/u01/oracle/oradata/stone/control01.ctl,/u01/oracle/oradata/stone/control02.ctl';
alter system set control_files = '/u01/control04.ctl,/u01/oracle/oradata/stone/control01.ctl,/u01/oracle/oradata/stone/control02.ctl'
                 *
ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modified

 

 

 

SQL> alter system set control_files = '/u01/control04.ctl,/u01/oracle/oradata/stone/control01.ctl,/u01/oracle/oradata/stone/control02.ctl' scope=spfile;

System altered.

 

 

SQL> alter system set control_files = '/u01/control04.ctl','/u01/oracle/oradata/stone/control01.ctl','/u01/oracle/oradata/stone/control02.ctl' scope=spfile;

System altered.

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值