重命名联机日志文件(rename the online redo logfiles)

本文记录了一次因误操作重命名联机日志文件而导致数据库无法正常启动的经历。通过详细的操作步骤说明了如何在Oracle环境下不当处理日志文件可能会引发的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天做试验,联系重命名联机日志文件的时候,误操作,导致数据库打不开了。。。

 

alter database rename file '...1.log' to '...2.log'

操作步骤如下:

1、关闭数据库、拷贝D:/oracle/product/10.2.0/oradata/SPMS/redo*.log到上一层目录,

2、在mount状态下,将D:/oracle/product/10.2.0/oradata/SPMS/redo03.log重命名为D:/oracle/product/10.2.0/oradata/redo03.log,然后alter database open 打开数据库,没有问题,只修改了第三组日志文件,1、2都没有改变,活动状态的第一组日志文件其实已经修改了。但是没有注意到

 

3、想将日志文件redo03.log放回原来的位置,目录,于是,直接拷贝了D:/oracle/product/10.2.0/oradata/redo*.log,而其中只有redo03.log是有效地当前文件,而实际上D:/oracle/product/10.2.0/oradata/redo01.log和D:/oracle/product/10.2.0/oradata/spms/redo01.log已经不一样了,系统对D:/oracle/product/10.2.0/oradata/spms/redo01.log进行了修改,是最新的,

我直接拷贝,就把最新的当前活动日志文件组给覆盖掉了

4、所以即使你在mount状态下,如何操作redo03.log,都不能打开数据库,因为他找不到当前的那个最新的活动日志组了

如图所示:

 

 

SQL> startup mount

ORACLE 例程已经启动。

 

Total System Global Area  281018368 bytes

Fixed Size                  1248528 bytes

Variable Size             100664048 bytes

Database Buffers          171966464 bytes

Redo Buffers                7139328 bytes

数据库装载完毕。

SQL> alter databse open

  2  ;

alter databse open

      *

1 行出现错误:

ORA-00940: 无效的 ALTER 命令

 

 

SQL> alter database open;

alter database open

*

1 行出现错误:

ORA-00322: 日志 1 (用于线程 1) 不是当前副本

ORA-00312: 联机日志 1 线程 1:

'D:/ORACLE/PRODUCT/10.2.0/ORADATA/SPMS/REDO01.LOG'

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值