Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, баз данных и сетевого оборудования. Перед выполнением действий обязательно создайте резервную копию. При отсутствии необходимой квалификации обратитесь к ИТ-специалистам.

Ошибка ORA-01110: data file string — сбои и восстановление датафайлов

Обновлено: 26.08.2026  ·  Официальная база знаний
  • Ошибка ORA-01110: data file 5: '/u01/app/oracle/oradata/users01.dbf' в связке с ORA-01157, ORA-01578 или ORA-00376.
  • Табличное пространство переходит в статус OFFLINE или база не может открыться из режима MOUNT.
  • Сбои чтения/записи транзакций при обращении к объектам, расположенным в проблемном файле данных.

1. Идентификация файла данных и его статуса

SELECT file#, name, status, enabled, bytes/1024/1024 AS mb
FROM v$datafile
WHERE file# = 5;

2. Проверка физической доступности файла на диске

# Проверка существования и прав доступа файла
ls -l /u01/app/oracle/oradata/users01.dbf

3. Восстановление файла данных через RMAN (Production метод)

Если база открыта или находится в режиме MOUNT:

rman target /

-- 1. Перевод файла в Offline (если база открыта)
SQL 'ALTER DATABASE DATAFILE 5 OFFLINE;';

-- 2. Восстановление файла из резервной копии
RESTORE DATAFILE 5;

-- 3. Накат архивных логов на восстановленный файл
RECOVER DATAFILE 5;

-- 4. Возврат файла в Online
SQL 'ALTER DATABASE DATAFILE 5 ONLINE;';

4. Временный перевод некритичного файла в Offline для открытия базы

Если поврежден вспомогательный файл (не SYSTEM/SYSAUX/UNDO), базу можно открыть без него:

ALTER DATABASE DATAFILE 5 OFFLINE;
ALTER DATABASE OPEN;
Практический опыт инженера: Никогда не удаляйте файл данных командой `rm` на уровне ОС до тех пор, пока табличное пространство не будет удалено через `DROP TABLESPACE ... INCLUDING CONTENTS AND DATAFILES;` внутри СУБД.

Частые вопросы (FAQ)

Можно ли открыть базу, если в ORA-01110 указан файл табличного пространства SYSTEM?

Нет. Табличные пространства SYSTEM и UNDO критически необходимы для работы словаря и транзакций. База не откроется, пока эти файлы не будут полностью восстановлены.

Почему ORA-01110 всегда возникает вместе с другими ошибками?

Код ORA-01110 является контекстным стековым сообщением Oracle — он указывает конкретный номер и путь к файлу данных, к которому относится предшествующая ошибка (например, ORA-01157 или ORA-01578).

Что делать, если файл данных был случайно удален, но бэкапа нет?

Если база работает в ARCHIVELOG и сохранились все архивлоги с момента создания файла: ALTER DATABASE CREATE DATAFILE 5 AS '/path/users01.dbf'; затем RECOVER DATAFILE 5;.

Как проверить файл данных на скрытые логические повреждения блоков (Bad Blocks)?

Используйте утилиту DBVERIFY: dbv file=/u01/app/oracle/oradata/users01.dbf blocksize=8192 feedback=10000.