Similar presentations:
Presentation(1)
1. Защита БД
ЗА Щ И ТА Б Д2. Для чего разработана БД и структура
Д Л Я Ч Е Г О РА З РА Б О ТА Н А Б Д ИС Т Р У К Т У РА
Для:
Автоматизации бизнеса по продаже товаров для пикника и туризма
2
Основные составляющие:
• Товары (палатки, спальники, посуда, мангалы, рюкзаки)
• Клиенты
• Заказы
• Сотрудники
• Аудит действий
1 8 . 0 5 . 2 0 2 6
3. Небольшая er диограмма
Н Е Б О Л Ь Ш А Я E R Д И О Г РА М М А3
1 8 . 0 5 . 2 0 2 6
4. Основные таблицы
О С Н О В Н Ы Е ТА БЛ И Ц ЫТаблица
Назначение
Ключевые поля
Customers
Клиенты
customer_id, email (зашифрован), телефон
Products
Товары
product_id, цена, количество
Orders
Заказы
order_id, сумма, статус
OrderDetails
Состав заказа
товары, количество, цена
Employees
Сотрудники
логин, роль, дата найма
Categories
Категории товаров
id, название, описание
AuditLog
Журнал действий
кто, когда, что изменил
4
1 8 . 0 5 . 2 0 2 6
5. Технические решения
ТЕХНИЧЕСКИЕ РЕШЕНИЯТакие как:
РОЛИ И ПОЛЬЗОВАТЕЛИ
УРОВНИ ИЗОЛЯЦИИ
5
ЛОГИРОВАНИЕ
ШИФРОВАНИЕ
1 8 . 0 5 . 2 0 2 6
ИНДЕКСЫ
ПАРТИЦИОНИРОВАНИЕ
6. ПАРТИЦИОНИРОВАНИЕ (Разделение таблиц)
П А РТ И Ц И О Н И Р О ВА Н И Е( РА З Д Е Л Е Н И Е
ТА Б Л И Ц )
ПАРТИЦИОНИРОВАНИЕ (Разделение таблиц)
Что это: Разбиение больших таблиц на логические части для ускорения работы
PARTITION BY RANGE (category_id)
p_tents
(категория 1)
p_sleeping
(категория 2)
p_cookware
(категория 3)
p_grills
(категория 4)
p_backpacks
(категория 5)
Таблица Orders разделена по годам
PARTITION BY RANGE (YEAR(order_date))
p2023 (заказы 2023 года)
p2024 (заказы 2024 года)
p2025 (заказы 2025 года)
p_future (будущие заказы)
Преимущества:
1 8 . 0 5 . 2 0 2 6
6
7. ИНДЕКСЫ (Ускорение поиска)
ИНДЕКСЫ (УСКОРЕНИЕ ПОИСКА)Созданные индексы:
1. idx_order_customer_id
- быстрый поиск заказов клиента
2. idx_order_customer_date
- поиск заказов клиента по дате
3. idx_order_status_date
4. idx_product_price_category - фильтр товаров по цене и категории
5. idx_customer_registration - поиск по дате регистрации
6. idx_employee_username
Влияние на производительность:
Без индекса: поиск по 1 млн записей = 1 секунда
С индексом: поиск по 1 млн записей = 0.01 секунды
Я проверял так что вот не надо мне тут ну это самое
- поиск заказов по статусу
1 8 . 0 5 . 2 0 2 6
- уникальный логин сотрудника
7
8. шифрование
Ш И Ф РО ВА Н И ЕКакие данные шифруются:
Email клиентов (личная информация)
Как работает:
Исходные данные: "ivan@example.com"
(шифрование)
Зашифрованные: 0x4A8F3C2E1B6D9A5C...
(хранится в БД)
(расшифровка)
8
Исходные данные: ivan@example.com
Оссобеность в том что хранятся данные в виде который не особо то и читабелен однако при расшифровке получаем вменяемый текст
На входе - 0xfb97131236sdiohaw782
На выходе -
1 8 . 0 5 . 2 0 2 6
9. ЛОГИРОВАНИЕ
Л О Г И РО ВА Н И ЕЧто логируется:
Действие
Что записывается
Изменение цены товара
Старая цена - Новая цена
Создание заказа
Данные нового заказа
Изменение статуса заказа
Какой был - Какой стал
9
1 8 . 0 5 . 2 0 2 6
10. РОЛИ И ПОЛЬЗОВАТЕЛИ
РОЛ И И П ОЛ ЬЗО ВАТ Е Л ИСистема ролей:
admin_role
→ полный доступ ко всему
manager_role
→ всё, кроме управления пользователями
sales_role
→ работа с заказами и клиентами
logistics_role→ только просмотр заказов и товаров
Пользователи:
admin_user@localhost
manager_user@localhost
sales_user@localhost
logistics_user@localhost
MySQL when i ask
him
To delete all of data
base
With user
priveleges:
10
1 8 . 0 5 . 2 0 2 6
11. Спасибо за внимание
СПАСИБО ЗА ВНИМАНИЕ11
1 8 . 0 5 . 2 0 2 6