
- •1) Графы. Способы реализации.
- •2) Графы. Обходы графов.
- •3) Графы. Кратчайшие расстояния
- •4) Графы. Построение минимального остовного дерева
- •5) Атд список. Реализация с помощью указателей.
- •6) Атд стек. Реализация с помощью указателей.
- •7) Атд очередь. Реализация с помощью указателей.
- •9) Назначение и структура файлов баз данных. Основные характеристики баз данных. Типы полей, используемых в базах данных.
- •10) Основные понятия реляционной базы данных.
- •11) Архитектура файл-сервер. Достоинства и недостатки.
- •12) Формы языка sql, их назначение. Составные части языка sql.
- •13) Администрирование баз данных. Права доступа пользователей к данным (язык sql).
- •14) Архитектура «выделенный сервер баз данных». Достоинства и недостатки.
- •15) Поясните этапы проектирования баз данных.
- •16) Транзакции
13) Администрирование баз данных. Права доступа пользователей к данным (язык sql).
Администрирование базы данных – это функция управления базой данных (БД). Лицо ответственное за администрирование БД называется “Администратор базы данных” (АБД) или “Database Administrator” (DBA).
Коллективное использование базы данных требует административного контроля. Необходимо поручить эти обязанности одному или нескольким сотрудникам, которые будут исполнять роль администраторов базы данных. Некоторые ошибочно полагают, что использование базы данных небольшим коллективом пользователей не требует специального обслуживания, и считают нецелесообразным выделение специальных средств на административную поддержку приложения, аргументируя это отсутствием свободных штатных сотрудников и нехваткой служебного времени. Однако если этот вопрос будет проигнорирован, рано или поздно такое положение дел приведет к нежелательным последствиям. Однажды база данных может быть испорчена и не окажется резервных копий. Невозможно будет решить некоторые часто возникающие задачи администрирования, требующие определенной квалификации, которой пользователи обычно не имеют. При этом может возникнуть такая ситуация, что не будет возможности немедленно связаться с разработчиками или база данных просто была приобретена без заключения договора о сопровождении.
Администратор базы данных (АБД) или Database Administrator (DBA) – это лицо, отвечающее за выработку требований к базе данных, её проектирование, реализацию, эффективное использование и сопровождение, включая управление учётными записями пользователей БД и защиту от несанкционированного доступа. Не менее важной функцией администратора БД является поддержка целостности базы данных.
Руководства для разных СУБД по-разному формулируют функции администратора, но в конечном итоге они сводятся к следующим:
создание резервных копий файлов;
периодическое сжатие файлов (для баз данных);
защита файлов средствами шифрования (для баз данных);
изменение пароля для открытия файла (для баз данных);
управление учетными записями и правами доступа для приложений, защищённых на уровне пользователей;
установка приложения, разделенного на файл объектов данных и файл объектов приложения, на новую рабочую станцию и обновление ссылок на связанные таблицы (для баз данных);
установка клиентского приложения на новую рабочую станцию и корректное подключение ее к базе данных, установленной на сервере (для проектов).
При использовании базы данных коллективом в десятки человек подобные задачи возникают достаточно часто и их спектр достаточно широк, в этом случае рекомендуется разделить административные обязанности между несколькими специалистами. Для поддержки комплексных сетевых бизнес-приложений вводят специальные должности.
Существенной особенностью языка SQL, появившейся в нем с самого начала, является обеспечение защиты доступа к данным средствами самого языка. Основная идея такого подхода состоит в том, что по отношению к любому отношению БД и любому столбцу отношения вводится предопределенный набор привилегий. С каждой транзакцией неявно связывается идентификатор пользователя, от имени которого она выполняется (способы связи и идентификации пользователей не фиксируются в языке и определяются в реализации).
Управление пользователями базы данных
Стабильная система управления пользователями – обязательное условие безопасности данных, хранящихся в любой реляционной СУБД. В языке SQL не существует единственной стандартной команды, предназначенной для создания пользователей базы данных – каждая реализация делает это по-своему. В одних реализациях эти специальные команды имеют определенное сходство, в то время как в других их синтаксис имеет существенные отличия. Однако независимо от конкретной реализации все основные принципы одинаковы.
Идентификатором пользователя называется обычный идентификатор языка SQL, применяемый для обозначения некоторого пользователя базы данных. Каждому пользователю должен быть назначен собственный идентификатор, присваиваемый администратором базы данных. Из очевидных соображений безопасности идентификатор пользователя, как правило, связывается с некоторым паролем. Каждый выполняемый СУБД SQL-оператор выполняется от имени какого-либо пользователя. Идентификатор пользователя определяет, на какие объекты базы данных пользователь может ссылаться и какие операции с этими объектами он имеет право выполнять.
Привилегиями, или правами, называются действия, которые пользователь имеет право выполнять в отношении данной таблицы базы данных или представления. В стандарте SQL определяется следующий набор привилегий:
SELECT – право выбирать данные из таблицы;
INSERT – право вставлять в таблицу новые строки;
UPDATE – право изменять данные в таблице;
DELETE – право удалять строки из таблицы;
REFERENCES – право ссылаться на столбцы указанной таблицы в описаниях требований поддержки целостности данных;
USAGE – право использовать домены, проверки и наборы символов