Page 115 - 4636
P. 115
[WITH [GRANT OPTION | обмежені_параметри] ]
Конструкції, укладені в квадратні дужки, є необов'язковими. У даній синтаксичній структурі
наявні кілька заповнювачів.
Перший, повноваження, необхідно заповнювати розділеним комами списком повноважень,
визначених у MySQL. Повноваження будуть розглянуті в наступній лекції.
Заповнювач стовпці необов'язковий. Його можна використовувати для вказівки повноважень
стосовно конкретних стовпців. При цьому можна вказувати ім'я одного стовпця або розділений
комами список імен стовпців.
Заповнювач елемент може бути базою даних або таблицею, до якої застосовують нові
повноваження. Вказавши як елемент рядок * . * , можна надати повноваження для всіх баз даних у
цілому. Така дія називається наданням глобальних повноважень. Цей самий ефект досягається і
зазначенням лише одного символу *, якщо повноваження не повинні застосовуватися до якоїсь
конкретної бази даних.
Зазвичай повноваження застосовують до всіх таблиць у певній базі даних - ім'я _БД . *, до
конкретної таблиці - ім'я _БД . ім'я таблиці, або до певних стовпців - ім'я _БД. Ім'я_таблиці з
наступним списком необхідних стовпців на місці заповнювача стовпці. Все перераховане представляє
три інших доступних рівня повноважень: відповідно бази даних, таблиці та стовпця. Якщо при видачі
цієї команди використовується якась конкретна база даних, то просто параметр ім'я таблиці буде
інтерпретуватися як "таблиця в поточній базі даних".
Як значення ім'я_користувача повинно бути вказано ім'я, під яким користувач повинен входити в
MySQL. Пам'ятайте, що воно не обов'язково має збігатися з реєстраційним ім'ям, під яким виконується
вхід у систему. У MySQL ім'я_користувача може включати в себе й ім'я хоста, що досить зручно для
того, щоб розрізняти користувачів, скажімо, laura (яке інтерпретується як lauraS@localhost) і
laura@somewhere.com. Це дуже зручно, оскільки часто користувачі в різних доменах мають одні й ті ж
імена. Крім того, підвищується ступінь захищеності системи, оскільки можна вказати, звідки
користувачі можуть підключатися до бази даних і навіть до яких баз даних або таблиць вони можуть
мати доступ.
Як заповнювач пароль слід вказати пароль, необхідний для входу. Керуйтеся загальними
правилами використання паролів. Про безпеку ми поговоримо трохи пізніше, відзначимо лише, що
пароль не повинен бути такий, який легко вгадати. Не варто вживати слово зі словника або яке
збігається з ім'ям користувача. В ідеалі пароль повинен включати в себе великі та малі букви і
небуквені символи.
Конструкція REQUIRE дозволяє вказувати, що користувач повинен підключатися через SSL
(Secure Sockets Layer - рівень захищених сокетів) і передавати додаткові параметри для SSL.
Додаткову інформацію про SSL - з'єднаннях з MySQL можна знайти у посібнику MySQL.
Опція WITHGRANTOPTION, якщо вона вказана, дає право користувачу надавати свої
повноваження іншим.
Натомість конструкції GRANT OPTION можна вказувати такі конструкції:
MAX_QUERIES_PER_HOUR л
або
MAX_UPDATES_PER_HOUR л
або
MAX_CONNECTIONS_PER_ HOUR Л
За допомогою цих конструкцій можна обмежити кількість запитів, оновлень або підключень, які
користувач може виконати за годину. Вони є виключно корисними для обмеження завантаження
індивідуальними користувачами спільно використовуваної системи.
112