Ошибка ORA-00214 возникает в случае несогласованности двух копий управляющих файлов (control files). Такая ошибка может возникнуть во время запуска экземпляра БД.
sql> startup ORACLE instance started. Total System Global Area 1071333376 bytes Fixed Size 1375792 bytes Variable Size 603980240 bytes Database Buffers 461373440 bytes Redo Buffers 4603904 bytes ORA-00214: controlfile 'C:\ORACLE\ORADATA\MYSID\CONTROL02.CTL' version 4864 inconsistent with file 'C:\ORACLE\ORADATA\MYSID\CONTROL01.CTL' version 4861
Исправить эту ошибку можно следующим образом. Первое, что нам необходимо, это определить какой из control-файлов имеет самую позднюю версию. В нашем примере, для control02.ctl: version 4864, для control01.ctl: version 4861. Меняем системные настройки БД таким образом, чтобы остался один control-файл самой поздней версии:
sql> alter system set control_files='c:\oracle\oradata\MYSID\control02.ctl' scope=spfile; sql> shutdown immediate; sql> startup mount; --> монтирование должно пройти без ошибок sql> alter database open;
Почему нам нужен файл именно последней версии? Чтобы не возникло конфликта несоответствия control-файлов с файлами redo. Если все прошло успешно, снова меняем параметры конфигурации control-файлов и останавливаем БД.
sql> alter system set control_files='c:\oracle\oradata\MYSID\control01.ctl', 'c:\oracle\oradata\MYSID\control02.ctl' scope=spfile; sql> alter system switch logfile; sql> alter system switch logfile; sql> shutdown immediate;
Копируем файл CONTROL02.CTL и называем его CONTROL01.CTL. Если control-файлов было больше двух, делаем аналогичные копии для всех остальных файлов. Запускаем БД.
sql >startup ORACLE instance started. Total System Global Area 1071333376 bytes Fixed Size 1375792 bytes Variable Size 603980240 bytes Database Buffers 461373440 bytes Redo Buffers 4603904 bytes Database mounted. Database opened. sql>