文档解释
ORA-01672: control file may be missing files or have extra ones
Cause: Attempting to create a standby control file, but the control file was either recently created via CREATE CONTROLFILE or an incomplete recovery has been done. Thus the datafiles in the control file and the ones in the data dictionary may not match.
Action: Open the database, then retry the operation.
ORA-01672表示控制文件可能缺少文件或者有额外的文件。
官方解释
Oracle会在启动的时候检查控制文件和确认控制文件中内容正确无误。如果控制文件缺少文件或者有多余的文件会导致ORA-01672的错误。
常见案例
Oracle在控制文件记录的位置找不到数据文件,或者有多余的数据文件,就会出现ORA-01672的错误。
正常处理方法及步骤
1. 重启实例,将控制文件和v$datafile和dba_data_files中记录进行比对。
2. 如果控制文件中有记录,但dba_data_files,dba_tablespaces中没有记录,说明相应的文件已经被删除,需要使用alter database open resetlogs进行重置。
3. 如果控制文件中记录的是正确的但在操作系统中有多余的文件,需要删除掉多余的文件。
4. 如果控制文件中有多余的记录,而dba_data_files中没有记录,需要将控制文件内多余的记录删除。