Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
4 курс (заочка) / Лабораторные работы / !Лабораторный практикум ТБД (задание).pdf
Скачиваний:
17
Добавлен:
08.01.2022
Размер:
1.12 Mб
Скачать

обратится к сегментам отката и реконструирует строку в том виде, как она была до начала транзакции. На этом уровне изоляции запрещены вставка, обновление и удаление.

Дополнительные замечания о блокировках

Приложение может налагать блокировки явным образом, используя форму SELECT FOR UPDATE оператора SELECT. Это не рекомендуется делать, пока вы не узнаете о блокировках в Oracle гораздо больше, чем описано здесь.

Oracle использует разнообразные типы внутренних блокировок для обеспечения описанных здесь уровней изоляции. Существует, например, коллективная блокировка строки, а также несколько типов табличных блокировок. Есть и другие блокировки, используемые Oracle для своих нужд. Вы можете узнать больше об этих блокировках в документации по Oracle.

Чтобы снизить вероятность конфликта блокировок, Oracle не дает возможности распространять блокировки с одного уровня на другой. Строчные блокировки остаются строчными, даже если их насчитываются сотни на сотнях строк таблицы. Эта стратегия отличается от стратегии SQL Server, как вы узнаете из следующей главы. Oracle Corporation заявляет, что нерасширение блокировок является преимуществом, и возможно, что это так, особенно если учитывать архитектуру блокировок Oracle в целом.

Oracle и безопасность

Для добавления пользователя в базу данных администратор базы данных создает учетную запись с именем пользователя и паролем. Каждому пользователю присваивается профиль — характеристика предельных объемов системных ресурсов, которые могут быть выделены данному пользователю. Сюда входит лимит совокупного процессорного времени, предоставляемого в течение одного сеанса или за один вызов Oracle, и другие подобные ограничения.

В Oracle имеются системные и объектные привилегии. Системные привилегии — это права на выполнение общих задач, таких как SELECT ANY TABLE и UPDATE ANY TABLE. Объектные привилегии относятся к действиям с определенными элементами базы данных — таблицами,

54

представлениями и последовательностями. Для предоставления привилегий другому пользователю можно использовать оператор GRANT.

Роль в Oracle — это совокупность привилегий и других ролей. Одна и та же роль может быть присвоена многим пользователям, и один и тот же пользователь может иметь множество ролей. Примером роли в базе данных галереи View Ridge может служить MANAGER. Эта роль наделяется всеми системными и объектными привилегиями, необходимыми для выполнения менеджерских функций в галерее. Учетные записи пользователя с данной ролью присваиваются ряду сотрудников галереи View Ridge.

Более подробную информацию о безопасности в Oracle вы можете получить, поискав там документацию по темам пользователь, роли и привилегии.

55