Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Create database mashzavod (Автосохраненный) (Сп...docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
7 Мб
Скачать
☆
  1. Користувач в MySql

Створюємо користувача з ім’ям dimasik.

Create user dimasik

На даному етапі користувач "dimasik" не має прав робити що-небудь з базами даних. Насправді, навіть якщо якщо користувач "dimasik" спробує залогінитися (з паролем "1234"), він не потрапить в консоль MySQL.

Таким чином, перше, що нам необхідно зробити, це надати користувачеві доступ до інформації, яка йому буде потрібно.

Grant all Privileges on *.* to dimasik

Зірочки в цій команді задають базу і таблицю, відповідно, до яких у користувача буде доступ. Саме ця команда дозволяє користувачеві читати, редагувати, виконувати будь-які дії над усіма базами даних і таблицями.

Післе завершення налаштування прав доступу нових користувачів, переконаймося, що оновили всі права доступу:

Flush Privileges

Користувач може отримати такі права доступу:

ALL PRIVILEGES - як ми бачили раніше, це дасть користувачеві MySQL повний доступ до заданої базі даних (якщо база даних не вказана, то до всіх).

CREATE - дозволяє створювати нові таблиці або бази даних.

DROP - дозволяє видаляти таблиці або бази даних.

DELETE - дозволяє видаляти рядки з таблиць.

INSERT - дозволяє додавати рядки в таблицю.

SELECT - дозволяє використовувати команду Select для читання з баз даних.

UPDATE - дозволяє редагувати рядки таблиць.

GRANT OPTION - дозволяє призначати або видаляти права доступу для інших користувачів.

Для призначення прав конкретному користувачеві можна використовувати наступну схему:

Grant [тип прав] On [назва бази данних ].[назва таблиці] to [ім’я користувача]

Позбавлення прав доступу практично ідентично їх наданню:

Revoke[тип прав]on [назва бази данних].[назва таблиці] from[ім’я користувача]

Позбавляємо всіх прав доступу користувача dimasik

Revoke all privileges on *.* from dimasik;

Надамо користувачу dimasik права на редагування та додавання рядків до таблиці robitnyk бази данних mashzavod.

Grant update,insert on mashzavod.robitnyk to dimasik;

Потім надамо користувачу dimasik права на перегляд таблиці klient бази данних mashzavod.

Grant select,drop on mashzavod.klient to dimasik;

Позбавляєм користувача dimasik права на видалення таблиці klient бази данних mashzavod

Revoke drop on mashzavod.klient from dimasik;

Переглядаєм права доступа користувача dimasik

Show grants from dimasik;

Видаляєм користувача dimasik

Drop user dimasik;

  1. Транзакції

Транзакція - група логічно пов'язаних операторів SQL, результати яких можуть бути зафіксовані або скасовані як єдине ціле.

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

.

Створюємо транзакцію за допомогою команди start transaction та commit

Перевіряєм правильність виконання транзакції

Створюємо ще одну транзакцію

Перевіряєм правильність виконання другої транзакції

Створюємо ще одну транзакцію ,в якій за допомогою команди rollback робимо відкат даної транзакції.

Використовуємо команду аutocommit та задаєм значення 1

За допомогою команди commit підтверджуємо дії транзакції. Після цього командою set autocommit=0 і таким чином повертаємо значення по замовчуванню.

За допомого команди locktables блокуєм таблицю klient

Перевіряєм блокування

Знімаєм блокування за допомогою команди unlocktables.