Меню Рубрики

Создание пользователя mysql linux

Как Создать Пользователя MySQL и Настроить Права Доступа

Хотите понять основы MySQL? Читайте дальше, так как эта статья раскрывает одну из базовых тем, а именно как создать пользователя в MySQL. Кроме этого мы покажем несколько команд, с помощью которых можно предоставить и отозвать привилегии, а также удалить существующих пользователей.

Получите скидку до 77% на пакеты VPS-хостинга.

Прежде чем мы перейдём к следующему разделу руководства, убедитесь, что вы установили MySQL. У нас есть отличные учебные пособия о том, как установить БД на Ubuntu и CentOS.

ОБРАТИТЕ ВНИМАНИЕ. Мы будем использовать командную строку, чтобы подключиться к нашему Linux VPS как root-пользователь. Вы можете использовать PuTTY (Windows) или свой терминал (macOS, Linux) и войти в систему, используя данные своего root-доступа SSH, предоставленные вашим хостинг-провайдером.

Создайте Учётную Запись Пользователя MySQL и Предоставьте Неограниченные Права Доступа

Как только вы начнёте использовать MySQL, вам будет предоставлено имя пользователя и пароль. Эти базовые учётные данные дают вам root-доступ, или полный контроль над всеми базами данных и таблицами.

Однако бывают случаи, когда вам необходимо дать доступ к базе данных кому-то другому, не предоставляя им полный контроль.

Например, вы нанимаете разработчиков для поддержки ваших баз данных, но не хотите, чтобы они могли удалять или изменять конфиденциальную информацию.

В таком случае просто предоставьте им учётные данные пользователя без полномочий root. Таким образом, определяя, что они могут и не могут делать с вашими данными.

Создать пользователя MySQL очень просто. В этой части мы объясним, как создать пользователя MySQL и назначить ему полные права доступа к базе данных. На практике было бы неразумно предоставлять полный контроль пользователю без полномочий root. Тем не менее это хорошая отправная точка для изучения пользовательских привилегий.

Чтобы создать новую учётную запись пользователя в MySQL, выполните следующие действия:

  1. Запустите командную строку и из неё сервер MySQL:
  2. Сценарий вернёт следующий результат, подтверждающий, что вы обращаетесь к серверу MySQL.
  3. Затем выполните следующую команду:
  4. novyi_polzovatel — это имя, которое мы дали нашей новой учётной записи, а часть IDENTIFIED BY‘parol’ устанавливает пароль для этого пользователя. Вы можете заменить значения внутри кавычек.
  5. Чтобы назначить созданном пользователю неограниченные права доступа к базе данных, выполните следующую команду:
  6. Для того, чтоб изменения вступили в силу запустите команду обновления:

Это всё. Ваш новый пользователь получил те же права доступа в базе данных, что и пользователь root.

Назначьте Специальные Права Доступа для Пользователя MySQL

Не забудьте указать имя базы данных и имя таблицы, разделив их с помощью . (точки) и не используя пробелов.

Кроме того, замените значение ТИП_ПРАВ типом доступа, который вы хотите предоставить своему новому пользователю.

В MySQL есть несколько типов прав доступа, некоторые из них описаны ниже:

  • CREATE — Позволяет пользователям создавать базы данных/таблицы
  • SELECT — Разрешает делать выборку данных
  • INSERT — Право добавлять новые записи в таблицы
  • UPDATE — Позволяет изменять существующие записи в таблицах
  • DELETE — Даёт право удалять записи из таблиц
  • DROP — Возможность удалять записи в базе данных/таблицах

ОБРАТИТЕ ВНИМАНИЕ. Тип прав ALL PRIVILEGES даёт все перечисленные выше разрешения.

Для использования любой из этих опций, просто замените ТИП_ПРАВ необходимым разрешением. Чтобы назначить несколько видов прав доступа, разделите их запятыми как в следующей команде. Например, мы можем назначить привилегии CREATE и SELECT нашему пользователю MySQL без полномочий root следующей командой:

Иногда вы можете столкнуться с ситуацией, когда вам нужно отменить определенные привилегии пользователя. Сделать это можно, выполнив следующую команду:

Чтобы отозвать все права доступа пользователя без полномочий root, используйте команду:

Наконец, вы можете полностью удалить существующую учётную запись пользователя, используя команду:

ОБРАТИТЕ ВНИМАНИЕ. Для запуска любой из этих команд вам необходим root-доступ. Также, обязательно выполняйте FLUSH PRIVILEGES; Команда после внесения изменений.

Просмотр Прав Доступа Пользователя MySQL

Чтобы узнать, какие разрешения уже предоставлены пользователю MySQL, используйте команду SHOW GRANTS:

Вывод будет выглядеть примерно так:

Что Такое База Данных MySQL?

Чтобы понять MySQL, вам нужно знать, что такое база данных. БД — это виртуальное хранилище, где вы можете сохранять необходимые данные для создания сайтов и веб-приложений.

База данных MySQL может хранить данные учётных записей пользователей, например, имена пользователей, пароли, адреса электронной почты и любую информацию, которую вы хотите сохранить для дальнейшего использования.

Однако хранимые данные должны быть организованны в определённом порядке. Вот почему у нас есть системы управления базами данных. Эти инструменты используются для связи с базой данных и позволяют разработчикам структурировать, хранить, создавать и изменять данные.

MySQL — одна из самых популярных систем управления базами данных. Её популярность объясняется простотой использования и поддержкой огромного сообщества. Даже такие платформы, как Facebook и Twitter, в некоторой степени используют MySQL.

Заключение

База данных является неотъемлемой частью каждого сайта и веб-приложения, поскольку она хранит все данные пользователей. Для более эффективного управления и связи с БД вам понадобится система управления базами данных. Мы рекомендуем использовать MySQL, надёжный и простой вариант.

В этом руководстве вы узнали несколько основных команд для работы в MySQL, в том числе КАК:

  • Создать пользователя MySQL и предоставить ему полные права доступа
  • Назначить и отозвать определённые разрешения, а также полностью удалить пользователя MySQL
  • Посмотреть разрешения пользователя MySQL

Удачи, и не стесняйтесь оставлять комментарии ниже, если у вас есть какие-либо вопросы.

Автор

Елена имеет профессиональное техническое образование в области информационных технологий и опыт программирования на разных языках под разные платформы и системы. Более 10 лет посвятила сфере веб, работая с разными CMS, такими как: Drupal, Joomla, Magento и конечно же наиболее популярной в наши дни системой управления контентом – WordPress. Её статьи всегда технически выверены и точны, будь то обзор для WordPress или инструкции по настройке вашего VPS сервера.

Источник

Создание пользователя MySQL

После того, как вы установили и настроили MySQL, вам необходимо создать базы данных, таблицы и пользователей. Конечно, вы можете сделать это от имени суперпользователя root, но это не безопасно. Да и большинство приложений не позволят вам такой вольности, например, Phpmyadmin не даст авториrзоваться от имени суперпользователя.

Поэтому для каждой базы данных нужно создавать отдельных пользователей и настраивать для них права. В этой статье мы рассмотрим, как выполняется создание пользователя mysql, а также настройка его прав.

Создание пользователя mysql

1. Как создать пользователя MySQL

Предположим, что база данных уже создана и называется test_database. Нам нужно открыть клиент базы данных. Для этого наберите в терминале:

Теперь можно работать. Для создания пользователя используется команда CREATE USER, её синтаксис такой:

CREATE USER ‘имя_пользователя’ @ ‘хост’ IDENTIFIED BY ‘пароль’ ;

Кроме имени пользователя, здесь нужно задать хост, с которого может авторизоваться этот пользователь. Здесь может быть доменное имя, IP-адрес, адрес подсети или знак «%», который означает все возможные хосты. Это очень удобно, потому что вы можете создать пользователя, к которому можно будет подключится только локально или настроить отдельно права для локального или удалённого пользователя.

Например, давайте создадим локального пользователя test_user с паролем password:

CREATE USER ‘test_user’@’localhost’ IDENTIFIED BY ‘password’;

Или можно создать пользователя, который будет доступен со всех хостов:

CREATE USER ‘test_user’@’%’ IDENTIFIED BY ‘password’;

Смотрим наших пользователей:

SELECT User,Host FROM mysql.user;

Все пользователи созданы.

2. Права пользователя MySQL

Создать пользователя — это ещё далеко не всё, теперь нужно назначить ему права. Для этого используется команда GRAT. У неё такой синтаксис:

GRANT привилегии ON база_данных . таблица TO ‘ имя_пользователя ‘ @ ‘ хост ‘ ;

Здесь можем дать определённые привилегии для опредёленного пользователя к базе данных или таблице. Если нужно дать права для всех баз данных или таблиц, используйте вместо названия звездочку — «*». Вот основные права пользователя MySQL, которые вы можете использовать:

  • ALL PRIVILEGES — все, кроме GRANT;
  • USAGE PRIVILEGES — никаких привилегий;
  • SELECT — делать выборки из таблиц;
  • INSERT — вставлять данные в таблицу;
  • UPDATE — обновлять данные в таблице;
  • DELETE — удалять данные из таблицы;
  • FILE — разрешает читать файлы на сервере;
  • CREATE — создавать таблицы или базы данных;
  • ALTER — изменять структуру таблиц;
  • INDEX — создавать индексы для таблиц;
  • DROP — удалять таблицы;
  • EVENT — обработка событий;
  • TRIGGER — создание триггеров.

Также доступны такие привилегии администрирования баз данных:

  • GRANT — изменять права пользователей;
  • SUPER — суперпользователь;
  • PROCESS — получение информации о состоянии MySQL;
  • RELOAD — позволяет перезагружать таблицы привилегий;
  • SHUTDOWN — позволяет отключать или перезапускать базу данных;
  • SHOW DATABASES — просмотр списка баз данных;
  • LOCK TABLES — блокирование таблиц при использовании SELECT;
  • REFERENCES — создание внешних ключей для связывания таблиц;
  • CREATE USER — создание пользователей;

Чтобы дать права пользователю MySQL на обновление и добавление записей для базы данных test_database, выполните:

GRANT SELECT,UPDATE,INSERT ON test_database . * TO ‘test_user’@’localhost’;

Дальше дадим этому же пользователю все права над этой базой данных:

GRANT ALL PRIVILEGES ON test_database . * TO ‘test_user’@’localhost’;

Теперь посмотрим привилегии нашего пользователя:

SHOW GRANTS FOR ‘test_user’@’localhost’;

Мы видим, что для всех баз данных и таблиц привелегий нет, но зато есть все привилегии для базы данных test_database. Вот так это работает. После обновления прав пользователя необходимо обновить таблицу прав пользователей MySQL в памяти. Для этого выполните:

3. Удаление прав пользователя MySQL

Чтобы отозвать права у пользователя MySQL, используйте команду REVOKE вместо GRANT. Её синтаксис похож на GRANT:

REVOKE привилегии ON база_данных . таблица FROM ‘ имя_пользователя ‘ @ ‘ хост ‘ ;

Например, заберём все права на базу данных test_database у нашего пользователя:

REVOKE ALL PRIVILEGES ON test_database . * FROM ‘test_user’@’localhost’;

4. Создание суперпользователя MySQL

Если вам необходимо создать пользователя со всеми правами MySQL на замену для root, то можно использовать такую конструкцию:

GRANT ALL PRIVILEGES ON * . * TO ‘test_user’@’localhost’;

Даём все привилегии для пользователя test_user над всеми базами данными и всеми таблицами. Но наш пользователь не сможет давать права другим пользователям. Чтобы это исправить, нужно дать ему привилегию GRANT, а для этого используется такая команда:

GRANT ALL PRIVILEGES ON * . * TO ‘test_user’@’localhost’ WITH GRANT OPTION;

Теперь этот пользователь является суперпользователем для MySQL и, авторизовавшись от его имени в PhpMyAdmin, вы можете делать всё то же самое, что и с помощью root.

Выводы

В этой статье мы рассмотрели, как создать пользователя MySQL в Ubuntu или в любом другом дистрибутиве. Работа в командной строке с MySQL может показаться довольно сложной. Но сделать это надо всего один раз -после установки базы данных. А дальше можно выполнять все действия в Phpmyadmin.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Создание пользователя linux с правами sudo
  • Создание пользователя linux mint
  • Создание папки в linux
  • Создание операционной системы на базе ядра linux
  • Создание образов разделов linux