文档解释
ORA-00369: Current log of thread string not useable and other log being cleared
Cause: Attempt to open thread failed because it is necessary to switch redo generation to another online log, but all the other logs are being cleared or need to be archived before they can be used.
Action: If the ALTER DATABASE CLEAR LOGFILE command is still active then wait for it to complete. Otherwise reissue the CLEAR command. If there are other online logs for the thread, that are not being cleared, then archive the logs.
ORA-00369:Current log of thread string not useable,错误表示当前日志线程 string 无法使用,且正在清除其它日志。
ORA-00369的官方解释如下:
Cause:当前日志线程不能被使用。这可能是由于一种失败的操作(例如ALTER DATABASE CLEAR LOGFILE or ALTER DATABASE CLEAR UNARCHIVED LOGFILE),也可能是由于一种文件系统 I/O 错误。
Action:如果可能,确保日志文件位置正确,并且正确配置存储设备,以保证日志文件可以被备份。如果可能,重新启动这个实例。
常见案例
正常处理方法及步骤
1. 使用alter system switch logfile 将当前的线程切换到新的redo日志文件;
2. 重新启动实例。
在以上步骤中,如果出现ORA-00369错误,表明当前日志文件不可用,这可能是文件本身出现错误,也可能是文件系统IO错误造成的。
1. 确保日志文件所在位置正确,并且存储设备正常配置;
2. 尝试将当前的日志线程切换到新的redo日志文件;
3. 如果日志文件可以正常读取,重新启动实例,让实例识别日志文件;
4. 如果日志文件无法读取,则使用ALTER DATABASE CLEAR LOGFILE 清除日志文件,重新创建新的日志文件。这时可能将会产生一些多余的日志文件,需要使用ALTER SYSTEM CLEAR UNARCHIVED LOGFILE进行清理,以免影响性能。