MySQL потребителски права на споделен хостинг

MySQL общи привилегии

Привилегиите, предоставени на MySQL потребител, определят кои операции може да бъдат изпълнени от потребителя. Привилегиите за MySQL се различават както в контекста, в който се прилагат, така и поради различните нива на приложение:

  • Административни права – позволяват на потребителите да управляват работата на MySQL сървъра. Тези привилегии са глобални защото не са специфични за конкретна база данни.
  • Права на база данни – отнасят се за база данни и за всички обекти в нея. Тези права могат да се предоставят за конкретни бази данни или глобално на сървъра, така че да се прилагат към всички бази данни.
  • Привилегии на обекти в база данни – привилегии на таблици, индекси, изгледи и съхранени процедури могат да се предоставят за конкретни обекти в база данни или за всички обекти от даден тип в рамките на една база данни (например, всички таблици в база данни), или глобално за всички обекти от даден тип във всички бази данни.

Информацията за привилегии на акаунт се съхранява в таблиците user, db, tables_priv, columns_priv и procs_priv в системната база данни mysql. MySQL сървърът чете съдържанието на тези таблици в паметта и ги презарежда когато стартира.

Привилегии на MySQL потребители на споделен хостинг

От съображения за сигурност потребителските MySQL акаунти на споделен хостинг не получават привилегии на MySQL суперпотребител, а само привилегии в база данни и нейните обекти.

По-долу публикуваме кратка информация за всички привилегии, които СуперХостинг.БГ предоставя на MySQL потребителите:

Бележка: Изписването на MySQL команди и изявления с главни букви е практика, използвана от разработчиците на MySQL в официалната документация https://dev.mysql.com, поради което използваме този синтаксис.

ALTER

Привилегията ALTER позволява използването на израза ALTER TABLE за промяна на структурата на таблиците. ALTER TABLE също така изисква CREATE и INSERT привилегии. Преименуването на таблица изисква ALTER и DROP привилегии на старата таблица, както и CREATE и INSERT привилегии на новата таблица.

ALTER ROUTINE

Привилегията ALTER ROUTINE е необходима, за да се променят или премахнат съхранените рутинни процедури (процедури и функции).

CREATE

Привилегията CREATE дава възможност за създаване на нови таблици.

CREATE ROUTINE

Привилегията CREATE ROUTINE е необходима за създаване на съхранени рутинни процедури (процедури и функции).

CREATE TEMPORARY TABLES

Привилегията дава възможност за създаване на временни таблици с помощта на инструмента CREATE TEMPORARY TABLE. След като сесията създаде временна таблица, сървърът не извършва допълнителни проверки на правата на таблицата. Създаващата сесия може да изпълнява всяка от следните операции в таблицата: DROP TABLE, INSERT, UPDATE или SELECT.

CREATE VIEW

Привилегията позволява използването на израза CREATE VIEW, който създава нов изглед или замества съществуващ изглед, ако е налична клаузата OR REPLACE. Ако изгледът не съществува, CREATE OR REPLACE VIEW е същият като CREATE VIEW. Ако изгледът съществува, CREATE или REPLACE VIEW го замества.

DELETE

Привилегията DELETE позволява да се изтриват редове от таблици в база данни.

DROP

Привилегията DROP Ви позволява да премахвате съществуващи таблици и изгледи. Привилегията DROP се изисква, за да може да се използва изразът ALTER TABLE … DROP PARTITION за разделена таблица. DROP привилегия също се изисква за TRUNCATE TABLE (премахване съдържанието на таблица без да се премахва самата таблица).

EVENT

Привилегията EVENT е необходима за създаване, промяна или стартиране на събития за Event Scheduler.

EXECUTE

Привилегията EXECUTE се изисква за изпълнение на съхранени рутинни процедури (процедури и функции).

INDEX

Привилегията INDEX позволява да се създават или премахват индекси. INDEX се отнася за съществуващи таблици. Ако имате CREATE привилегия за таблица, можете да включите дефиниции на индекси в израза CREATE TABLE.

INSERT

Привилегията INSERT дава възможност за вмъкване на редове в таблици в база данни. INSERT привилегия също се изисква за изпълнение на командите за поддръжка на таблици ANALYZE TABLE, OPTIMIZE TABLE и REPAIR TABLE.

LOCK TABLES

Привилегията дава възможност за използване на изрични изрази на LOCK TABLES за заключване на таблици, за които имате привилегия SELECT. Това включва заключване на таблицата за писане, което не позволява на други сесии да четат заключената таблица.

REFERENCES

Създаването на ограничение за чужд ключ изисква привилегия REFERENCES за таблицата.

SELECT

Привилегията SELECT позволява да избирате редове от таблици в база данни. Изразите SELECT изискват привилегията SELECT само ако те всъщност извличат редове от таблица. Някои изрази SELECT нямат достъп до таблици и могат да бъдат изпълнявани без разрешение за всяка база данни.

SHOW VIEW

Привилегията SHOW VIEW позволява използването на израза SHOW CREATE VIEW. Тази привилегия е необходима и за използването на изгледи с EXPLAIN.

TRIGGER

Привилегията TRIGGER дава възможност за стартиране на операции. Трябва да имате тази привилегия за таблица, за да създавате, премахвате, изпълнявате или показвате тригери за тази таблица.

UPDATE

Привилегията UPDATE позволява обновяването на редове в таблици в база данни.

Привилегиите за MySQL потребителя се задават при добавянето му към определена база данни: 🔗 Как да създам и ползвам MySQL база данни в моя хостинг акаунт? | Help

Обновена: 22.07.2021

Беше ли Ви полезна тази статия?

Вижте още