Skip to content

Latest commit

 

History

History
 
 

06-db-03-mysql

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

Домашнее задание к занятию "3. MySQL"

Введение

Перед выполнением задания вы можете ознакомиться с дополнительными материалами.

Задача 1

Используя docker поднимите инстанс MySQL (версию 8). Данные БД сохраните в volume.

Изучите бэкап БД и восстановитесь из него.

Перейдите в управляющую консоль mysql внутри контейнера.

Используя команду \h получите список управляющих команд.

Найдите команду для выдачи статуса БД и приведите в ответе из ее вывода версию сервера БД.

Подключитесь к восстановленной БД и получите список таблиц из этой БД.

Приведите в ответе количество записей с price > 300.

В следующих заданиях мы будем продолжать работу с данным контейнером.

Задача 2

Создайте пользователя test в БД c паролем test-pass, используя:

  • плагин авторизации mysql_native_password
  • срок истечения пароля - 180 дней
  • количество попыток авторизации - 3
  • максимальное количество запросов в час - 100
  • аттрибуты пользователя:
    • Фамилия "Pretty"
    • Имя "James"

Предоставьте привелегии пользователю test на операции SELECT базы test_db.

Используя таблицу INFORMATION_SCHEMA.USER_ATTRIBUTES получите данные по пользователю test и приведите в ответе к задаче.

Задача 3

Установите профилирование SET profiling = 1. Изучите вывод профилирования команд SHOW PROFILES;.

Исследуйте, какой engine используется в таблице БД test_db и приведите в ответе.

Измените engine и приведите время выполнения и запрос на изменения из профайлера в ответе:

  • на MyISAM
  • на InnoDB

Задача 4

Изучите файл my.cnf в директории /etc/mysql.

Измените его согласно ТЗ (движок InnoDB):

  • Скорость IO важнее сохранности данных
  • Нужна компрессия таблиц для экономии места на диске
  • Размер буффера с незакомиченными транзакциями 1 Мб
  • Буффер кеширования 30% от ОЗУ
  • Размер файла логов операций 100 Мб

Приведите в ответе измененный файл my.cnf.


Как оформить ДЗ?

Выполненное домашнее задание пришлите ссылкой на .md-файл в вашем репозитории.