Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
4
Добавлен:
11.04.2025
Размер:
923.7 Кб
Скачать

ГУАП

КАФЕДРА № 41

ОТЧЕТ ЗАЩИЩЕН С ОЦЕНКОЙ

ПРЕПОДАВАТЕЛЬ

Ассистент

Б.К.Акопян

должность, уч. степень, звание

подпись, дата

инициалы, фамилия

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №9

ПОЛЬЗОВАТЕЛЬСКИЕ ПРИВИЛЕГИИ

по курсу: БАЗЫ ДАННЫХ

РАБОТУ ВЫПОЛНИЛ

СТУДЕНТ гр. №

4116

подпись, дата

инициалы, фамилия

Санкт-Петербург 2023

Цель работы : получение практических навыков по администрированию СУБД MySQL.

Вариант 21.

Организация спортивного мероприятия

В Гуапландии любят спорт. Спортивная инфраструктура страны представлена спортивными сооружениями различного типа: спортивные залы, манежи, стадионы, корты и т.д. Каждая из категорий спортивных сооружений обладает атрибутами, специфичными только для нее: стадион характеризуется вместимостью, корт – типом покрытия. Гуапчане-спортсмены под руководством тренеров занимаются отдельными видами спорта, при этом один и тот же спортсмен может заниматься несколькими видами спорта, и в рамках одного и того же вида спорта может тренироваться у нескольких тренеров. Все спортсмены объединяются в спортивные клубы, при этом каждый из них может выступать только за один клуб. Организаторы соревнований проводят состязания по отдельным видам спорта на спортивных сооружениях города. По результатам участия спортсменов в соревнованиях производится награждение.

Ход работы:

Упражнение 1. Просмотр всех пользователей с помощью системной таблицы БД mysql

Открыт консольный клиент Command Line Client – Unicode, введен пароль, открыта системная БД mysql, в которой указаны все авторизованные пользователи (рисунок 1) .

Рисунок 1-Просмотр авторизованных пользователей

Выполнена команда: mysql> SELECT * FROM mysql.user\G, фрагменты ответа сервера показаны на рисунках 2,3.

Рисунок 2- Фрагмент ответа сервера по привилегиям пользователя mysql.infoschema

Рисунок 3- Фрагмент ответа сервера по привилегиям пользователя root

Далее выполнен просмотр списка глобальных переменных (рисунок 4)

Рисунок 4- фрагмент списка глобальных переменных

Выведен список привилегий на базы данных (рисунок 5)

Рисунок 5- Фрагмент списка привилегий на базы данных

Просмотрены права назначенные на таблицы (рисунок 6,7)

Рисунок 6- Права пользователей на таблицы

Рисунок 7- Отсутствие прав доступа пользователей к таблицам

Упражнение. Проверка полномочий доступа к данным через БД information_schema

Выполнен запрос по проверке привилегий к БД (рисунок 8)

Рисунок 8- Просмотр привилегий к БД information_schema

Выполнен запрос по проверке привилегий на доступ к таблицам БД information_schema (рисунок 9)

Рисунок 9- Просмотр прав доступа к таблицам БД information_schema

Выполнен запрос по проверке привилегий на доступ к полям БД (рисунок 10)

Рисунок 10- Отсутствие прав доступа к полям БД information_schema

Выполнен запрос по проверке привилегий на доступ к таблицам БД для конкретного пользователя mysql.sys@localhost (рисунок 11).

Рисунок 11- Просмотр прав конкретного пользователя

Упражнение. Предоставление доступа пользователю MySQL

Создана БД test_db. Добавлен пользователь test_user, который работает только на локальном сервере (localhost) с правами на выполнение выборок данных из БД с помощью инструкции SELECT (рисунок 12).

Рисунок 12- создание БД и добавление пользователя

Далее пользователю предоставляется доступ (рисунок 13)

Рисунок 13- команды для предоставления доступа

Выполнена проверка записи о наличии нового пользователя в БД mysql (рисунок 14)

Рисунок 14- Запись о новом пользователе в системной БД mysql

Упражнение. Проверка текущих полномочий пользователя

Выполнены команды для просмотра привилегий пользователя (рисунок 15)

Рисунок 15- Список привилегий пользователя test_user@localhost

В БД добавлена новая таблица (рисунок 16)

Рисунок 16- Создание новой таблицы

Пользователю выданы права доступа (рисунок 17)

Рисунок 17- предоставление прав доступа пользователю

Предоставление доступа к столбцу (рисунок 18). Пользователь может читать идентификатор и менять имя пользователя.

Рисунок 18- предоставление пользователю доступа к столбцу

Проверены права пользователя (рисунок 19)

Рисунок 19- Просмотр новых привилегий пользователя test_user@localhost

Упражнение. Смена пароля

Для изменения пароля учетной записи пользователя применена команда ALTER USER (рисунок 20)

Рисунок 20- Изменение пароля пользователя

Упражнение. Отзыв полномочий у пользователя

На рисунке 21 показано удаление прав для пользователя test_user@localhost

Рисунок 21- Удаление прав пользователя

Упражнение. Удаление пользователя

Выполнены команды по удалению пользователя (рисунок 22).

Рисунок 22- Удаление пользователя test_user@localhost

Для того, чтобы убедиться, что пользователь удален выведен список пользователей (рисунок 23).

Рисунок 23- Список пользователей после удаления

Упражнение. Реализация БД на сервере на принципах low-code

Запущен MySQL Workbench и выполнено подключение к серверу БД, на панели Shemas выбрано Create Shemas (рисунок 24,25)

Рисунок 24- Определение параметров новой БД example_third

Рисунок 25- Процесс генерации скрипта по созданию БД example_third

После обновления списка БД на сервере, созданная БД появилась в списке (рисунок 26)

Рисунок 26- Результат создания БД

Упражнение. Администрирование пользователей в среде MySQL Workbench

Выполнен переход на вкладку Administration , в разделе MANAGMENT выбрано Users and Privileges (рисунок 27).

Рисунок 27- Исходные данные по пользователям и привилегиям

Для нового пользователя по доступу к БД example_third, выбрано Add Account (рисунок 28)

Рисунок 28- Установка параметров для подключения нового пользователя

Выполнен переход на вкладку Administrative Roles (рисунок 29). Просмотрены списки предлагаемых по умолчанию ролей пользователя и глобальных привилегий.

Рисунок 29- Список предлагаемых по умолчанию ролей пользователя

Для добавления привилегий пользователю выбрано Add Entry (рисунок 30)

Рисунок 30- Выбор БД, на которую будут выданы разрешения пользователю

Определены права (рисунок 31)

Рисунок 31- Установление прав на манипулирование и создание объектов БД

Далее выполнен запрос на просмотр прав пользователя (рисунок 32)

Рисунок 32- Просмотр прав пользователя newuser на работу с БД

Модель данных из прошлой лабораторной работы открыта в формате .mwb (рисунок 33)

Рисунок 33- модель данных

На основе анализа предметной области выявлены пользователи БД

Таблица 1- пользователи БД sport

Пользователь

Полный доступ к БД

Доступ к конкретной таблице

Модификация объектов БД

Администратор

да

да

да

Организатор

нет

да

да

Тренер

нет

нет

нет

Сначала создается пользователь администратор (рисунок 34), которому присваиваются все привилегии (рисунок 35)

Рисунок 34- Создание пользователя администратор

Рисунок 35-Присвоение привилегий администратору

Создается пользователь организатор (рисунок 36), который имеет доступ редактирования таблицы «соревнования» (рисунок 37)

Рисунок 36- Создание пользователя организатор

Рисунок 37- Предоставление привилегий организатору

Также для редактирования таблицы «соревнования», организатор может просматривать таблицу «вид_спорта» и «спортивные_сооружения» (рисунок 38)

Рисунок 38- Предоставление привилегий организатору для чтения.

Для организатора был выведен список привилегий (рисунок 38).

Рисунок 39- Вывод списка привилегий для организатора

Создается пользователь тренер (рисунок 40), который не имеет никаких привилегий (рисунок 41)

Рисунок 40- Создание пользователя тренер

Рисунок 41- удаление всех привилегий для тренера

Рисунок 42- список пользователей

Создана роль «Редактор», которая назначена организатору и администратору (рисунок 43)

Рисунок 43- создание и присвоение роли «Редактор»

Создана роль «Специалист», которая присвоена тренеру (рисунок 44).

Рисунок 44- создание и присвоение роли «Специалист»

Рисунок 45- список созданных ролей

Вывод: получены практические навыки по администрированию СУБД MySQL.

Список используемых источников:

1. A.В. Аграновский, В.В. Боженко, Е.Л. Турнецкая. - Учебно-методическое пособие «Разработка и администрирование базы данных с открытым исходным кодом»‒ СПб.: ГУАП, 2022

2. Руководство по MySQL: https://metanit.com/sql/mysql.

Соседние файлы в папке БД 3 курс осень