Главная страница
Навигация по странице:

  • 14. Безопасность баз данных: понятие безопасности баз данных, средства обеспечения безопасности бд

  • 15.Транзакции

  • 17. Восстановление баз данных и резервное копирование: журнализация транзакций, восстановление базы данных, резервное копирование с примерами

  • Основные понятия баз данных база данных, свойства базы данных, система базы данных, основные функции базы данных


    Скачать 0.95 Mb.
    НазваниеОсновные понятия баз данных база данных, свойства базы данных, система базы данных, основные функции базы данных
    Дата15.06.2022
    Размер0.95 Mb.
    Формат файлаdocx
    Имя файла1-3.docx
    ТипДокументы
    #592401
    страница4 из 4
    1   2   3   4

    Создание триггеров


    В SQL Server существуют два вида триггеров:

    1. Триггеры выполняемые после события, произошедшего с таблицей (Полный аналог процедур событий в Visual Basic);

    2. Триггеры выполняемые вместо события, происходящего с таблицей. В этом случае событие (добавление, изменение или удаление записей) не выполняется, а вместо него выполняются SQL команды заданные внутри триггера.

    Первый вид триггеров применяется для обработки событий таблиц, а второй - для обеспечения целостности данных, то есть удаление записей из вторичной таблицы при удалении связанной с ними записи из первичной таблицы.

    Замечание: Триггеры создаются для конкретной таблицы и выполняются автоматически, если с таблицей, для которой они были созданы, происходит событие (добавление, изменение или удаление записей).

    14. Безопасность баз данных: понятие безопасности баз данных, средства обеспечения безопасности бд

    Безопасность базы данных (database security) – защита базы данных от несанкционированного доступа.

     Различные проблемы безопасности:

    Правовые, этические аспекты  Организационно-административные вопросы  Аппаратные и программные средства защиты  Средства защиты данных непосредственно в самой СУБД

    Средства безопасности в СУБД Технологии баз данных

     Концептуальные средства:  Концепция владельца данных  Концепция администратора базы данных  Привилегии  Роли

     Системные средства:  Шифрование  Квоты  Аудит

    15.Транзакции

    Транзакция – набор операций над базой данных, которые рассматриваются как одна неделимая операция и выполняют перевод базы данных из одного согласованного состояния в другое.

     В ходе выполнения транзакции согласованность базы данных может временно нарушаться.

     Результатом транзакции может быть фиксация (COMMIT) или откат (ROLLBACK) всех входящих в нее операций.

    В состав СУБД входит диспетчер транзакций.

     Команды диспетчера транзакций  COMMIT (зафиксировать)  сигнал диспетчеру транзакций об успешном окончании транзакции: логическая единица работы успешно завершена, база данных вновь находится в непротиворечивом состоянии  все обновления транзакции необходимо внести в базу данных.

     ROLLBACK (откатить)  сигнал диспетчеру транзакций о неудачном окончании транзакции: в процессе выполнения логической единицы работы произошла ошибка, вследствие которой база данных находится в противоречивом состоянии  все обновления транзакции необходимо отменить.

    АСИД-свойства транзакции Технологии баз данных

     Транзакция должна обладать АСИД-свойствами.

    Атомарность (Atomicity) – выполняются все операторы транзакции или ни один.  Согласованность (Consistency) – перевод базы данных из одного согласованного состояния в другое. 

    Изолированность (Isolation) – параллельные транзакции не могут повлиять друг на друга. 

    Долговечность (Durability) – изменения, произведенные зафиксированной транзакцией, не могут быть потеряны ни при каких обстоятельствах.

     Транзакция может быть запущена в одном из двух режимов: READ-WRITE (по умолчанию) и READONLY.

     В режиме READ-WRITE транзакция  может модифицировать объекты базы данных  видит изменения, вносимые в базу данных другими транзакциями, – после фиксации этих транзакций.  В режиме READ-ONLY транзакция  не может модифицировать объекты базы данных  не видит изменений, вносимых в базу данных другими транзакциями

    Проблемы параллельного выполнения транзакций Технологии баз данных

     Правильная сама по себе транзакция может выдать неправильный ответ, если в ее работу каким-либо образом вмешаются другие (также сами по себе правильные) транзакции.

     Проблемы параллельного выполнения транзакций:

     Потерянное обновление

     Зависимость от незафиксированных результатов

     Анализ несовместимости



     Проблемы параллельного выполнения могут быть устранены с помощью механизма блокировок.

    Если некоторой транзакции необходимо, чтобы определенный объект базы данных (как правило, кортеж отношения) не изменился без ее ведома, то она должна наложить блокировку на этот объект.

     Блокировка (lock) – ограничение (или запрет) доступа к объекту со стороны других транзакций.

    Блокировки записи (исключительные блокировки, X-блокировки)

     Блокировки чтения (разделяемые блокировки, S-блокировки)

     Матрица совместимости блокировок

    17. Восстановление баз данных и резервное копирование: журнализация транзакций, восстановление базы данных, резервное копирование с примерами

     Журнал транзакций – файл, в котором регистрируются изменения, вносимые транзакциями в базу данных.

     Журнал ведется по протоколу WAL (Write Ahead Log): запись в журнал об операции осуществляется перед выполнением этой операции.

    Действия системы при перезагрузке 

    Транзакции, зафиксированные до отказа системы, изменения которых не были физически записаны в базу данных, необходимо выполнить повторно. 

    Транзакции, не зафиксированные до отказа системы, необходимо отменить.

     Система различает данные категории транзакций с помощью контрольных точек.

     В момент контрольной точки (например, при определенном количестве записей в журнале) система насильно записывает на диск  содержимое рабочих буферов базы данных  список выполняющихся в данный момент транзакций.





    Резервное копирование







    Стратегия резервного копирования Технологии баз данных

     Что копировать?  Варианты: вся база данных, избранные файлы данных, архивный журнал или их комбинация.

     Каким способом копировать?  Варианты: согласованно/несогласованно.

     Какими средствами копировать?  Варианты: утилиты СУБД или ОС.

     Как часто копировать?  Возможное решение: еженедельно – полное копирование базы данных, ежедневно – копирование наиболее важных таблиц, поддержка архивного журнала, мультиплексирование журнала.
    1   2   3   4


    написать администратору сайта