Ошибки ORA-00742 и ORA-00312, которые вы видите, указывают на проблемы с журналами redo при переносе базы данных Oracle на другой сервер. Давайте рассмотрим возможные причины и решения:
### Причины ошибок
1. **Проблемы с файлами redo**:
- Возможно, при переносе файлов базы данных у вас отсутствуют некоторые журналы redo или они повреждены. Хотя база данных была закрыта, файлы redo могут не быть включены в копирование, если вы случайно не скопировали их или скопировали поврежденные версии.
2. **Несоответствие между данными и redo**:
- Если вы перенесли файлы данных и журналов redo, но не синхронизировали их, то это может вызвать проблемы. Например, если в журнале redo содержатся ссылки на изменения, которые не были записаны в файлах данных, то Oracle будет жаловаться на "потерянные записи".
3. **Копирование в неправильном порядке**:
- Если у вас были активные транзакции, их состояние могло измениться в процессе копирования, и это также может вести к недочетам.
4. **Неправильная версия или конфигурация сервера**:
- Удостоверьтесь, что вы используете аналогичную версию Oracle и что конфигурации сервера совпадают.
### Решения
1. **Проверка наличия всех файлов**:
- Убедитесь, что все файлы данных, файлы redo и файлы контроля (control files) были успешно скопированы на новый сервер.
2. **Восстановление из резервной копии**:
- Если у вас есть резервная копия, попробуйте восстановить базу данных из ней. Это может решить проблемы, связанные с недостающими данными.
3. **Использование RMAN**:
- Если у вас есть возможность, попробуйте использовать Recovery Manager (RMAN) для создания резервной копии и восстановления. RMAN лучше управляет зависимостями между файлами и журналами redo и поможет избежать ошибок.
4. **Изучение журнального файла**:
- Для дополнительной информации посмотрите в журнал ошибок Oracle (Alert Log) и файлы-отчеты, которые могут содержать более детальную информацию о возникших ошибках.
5. **Создание нового контрольного файла**:
- Если проблема неразрешима, возможно, вам нужно создать новый контрольный файл. Это можно сделать с помощью команды `CREATE CONTROLFILE`. Однако это более сложный процесс, и применяется только тогда, когда другие методы не помогают.
6. **Консультация с документацией**:
- Изучите официальную документацию Oracle по данным ошибкам. Там могут быть указаны дополнительные рекомендации по устранению проблем.
Если вы не решили проблему, обратитесь к специалистам или технической поддержке Oracle с полными журналами ошибок и описанием ваших действий. Это может помочь более точно диагностировать проблему и предложить конкретные пути решения.