В OracleS есть возможность, позволяющая принудительно вводить ограничение, а не включать его. Принудительное введение ограничения распространяется на все последующие вставки и обновления, но не касается данных, находящихся в таблице. Синтаксис выглядит так:
ALTER TABLE my_tab ENFORCE CONSTRAINT mt_ccl;
Эта опция также может быть очень полезной при включении ограничения в очень большой таблице, так как она позволяет избежать значительных затрат, необходимых для проверки каждой строки.
Защита данных
Механизмам защиты данных в базах данных посвящена отдельная глава нашей книги "Oracle: проектирование баз данных". Там мы рассматривали такие вопросы, как аудит, безопасность, резервное копирование и восстановление. Рады сообщить, что OracleS в этом плане несколько усовершенствован и описываем внесенные изменения в данной главе.
Утилита DB_VERIFY
В книге "Oracle: проектирование баз данных" исследовались стратегии резервного копирования баз данных Oracle. Мы отмечали, в частности, что, хотя резервное копирование и является задачей администратора базы данных, проектировщик этой базы данных часто обладает информацией о размещении и структуре данных и сам может сформулировать правила резервного копирования. Мы также обращали внимание читателей на то, что самый быстрый способ резервного копирования файлов базы данных — сохранение двоичного образа (image backup) ее файлов. Однако при таком сохранении копируется весь файл, поэтому нет гарантий целостности блоков данных Oracle в этих файлах. В Oracle? вероятность таких ошибок можно минимизировать путем планирования регулярного полного экспортирования базы данных с проходом по всей ее структуре. Это обеспечивает целостность базы данных (и позволяет узнать о возникающих проблемах). Основной недостаток полного экспортирования базы данных состоит в том, что оно занимает много времени, особенно если база очень велика.
Теперь бояться нечего. В OracleS включена новая утилита, DB_VERIFY, которая может применяться либо к оперативной базе данных (ее части), либо к резервному файлу (набору резервных файлов). С помощью этой утилиты также можно диагностировать проблемы, связанные с повреждением данных. DBJVERIFY — удобное оружие в арсенале администратора базы данных, которое должно быть неотъемлемой частью любой стратегии резервного копирования. Мы рекомендуем использовать DB_VERIFY в цикле резервного копирования для проверки копий файлов. Хотя эта утилита — эффективный инструмент выявления проблем, она, на наш взгляд, не играет большой роли в плановой обработке действующей базы данных.
42	Oracle 8