Сервер MYSQL

Сервера, настройка, развертывание
Аватара пользователя
icedog
Site Admin
Сообщения: 235
Зарегистрирован: Пн авг 03, 2020 5:49 pm
Откуда: Краснодар
Контактная информация:

Сервер MYSQL

Сообщение icedog »

Вход на сервер баз данных mysql с правами root

Код: Выделить всё

mysql -u root -p -h localhost
Сборка, настройка, ремонт серверов в Краснодарском крае. 1С Бухгалтерия. Обновления 1С. Сервер под 1С. Аренда+Написать в WhatsApp+
Аватара пользователя
icedog
Site Admin
Сообщения: 235
Зарегистрирован: Пн авг 03, 2020 5:49 pm
Откуда: Краснодар
Контактная информация:

Re: Сервер MYSQL

Сообщение icedog »

Создание пользователя vasya баз данных

Код: Выделить всё

CREATE USER 'vasya'@'localhost' IDENTIFIED BY 'password';
Аватара пользователя
icedog
Site Admin
Сообщения: 235
Зарегистрирован: Пн авг 03, 2020 5:49 pm
Откуда: Краснодар
Контактная информация:

Re: Сервер MYSQL

Сообщение icedog »

Создать базу данных mysql с названием proba1

Код: Выделить всё

CREATE DATABASE proba1;
Аватара пользователя
icedog
Site Admin
Сообщения: 235
Зарегистрирован: Пн авг 03, 2020 5:49 pm
Откуда: Краснодар
Контактная информация:

Re: Сервер MYSQL

Сообщение icedog »

Посмотреть весь список баз данных, доступных пользователю, под чьим логином мы вошли

Код: Выделить всё

SHOW DATABASES;
Аватара пользователя
icedog
Site Admin
Сообщения: 235
Зарегистрирован: Пн авг 03, 2020 5:49 pm
Откуда: Краснодар
Контактная информация:

Re: Сервер MYSQL

Сообщение icedog »

Присвоение привилегий для пользователя относительно определенной базы данных

Код: Выделить всё

GRANT [privileges] ON database.* TO '[user]'@'[host]';
Сами привилегии

Код: Выделить всё

ALL - Gives the all privilege control for the database
    CREATE - Allows users to create tables
    SELECT - Allows users to query tables
    INSERT - Allows users to insert data into a table
    SHOW DATABASES - Allows users to see a list of databases
    USAGE - User has no privileges
    GRANT OPTION - Allows users to grant privileges
Аватара пользователя
icedog
Site Admin
Сообщения: 235
Зарегистрирован: Пн авг 03, 2020 5:49 pm
Откуда: Краснодар
Контактная информация:

Re: Сервер MYSQL

Сообщение icedog »

Команда REVOKE позволяет нам запретить доступ пользователю. Мы можем запретить или все права на доступ, или определенные права. В действительности, формат весьма схож с командой GRANT

Код: Выделить всё

REVOKE ALL ON database.* FROM 'vasya'@'localhost';
Аватара пользователя
icedog
Site Admin
Сообщения: 235
Зарегистрирован: Пн авг 03, 2020 5:49 pm
Откуда: Краснодар
Контактная информация:

Re: Сервер MYSQL

Сообщение icedog »

Удаляем пользователя mysql

Код: Выделить всё

DROP USER 'vasya'@'localhost';
Аватара пользователя
icedog
Site Admin
Сообщения: 235
Зарегистрирован: Пн авг 03, 2020 5:49 pm
Откуда: Краснодар
Контактная информация:

Re: Сервер MYSQL

Сообщение icedog »

Просмотр всех пользователей сервера

Код: Выделить всё

SELECT User, Host FROM mysql.user;
Аватара пользователя
icedog
Site Admin
Сообщения: 235
Зарегистрирован: Пн авг 03, 2020 5:49 pm
Откуда: Краснодар
Контактная информация:

Re: Сервер MYSQL

Сообщение icedog »

Команда выше показывает только две колонки из таблицы mysql.user (User и Host), однако, в этой таблице содержится более 40 столбцов, таких как Password, Select_priv, Update_priv … и т. д.

Учетная запись пользователя в MySQL состоит из имени пользователя и имени хоста.

Можно использовать оператор desc mysql.user; для отображения информации о каждом столбце таблицы. Как только вы узнаете имя столбца, запустите запрос по выбранным данным.

Например, чтобы получить список всех учетных записей пользователей MySQL, включая информацию о пароле и о том, активен он или истек, вы можете использовать следующий запрос:

Код: Выделить всё

SELECT User, Host, password_expired FROM mysql.user;
Аватара пользователя
icedog
Site Admin
Сообщения: 235
Зарегистрирован: Пн авг 03, 2020 5:49 pm
Откуда: Краснодар
Контактная информация:

Re: Сервер MYSQL

Сообщение icedog »

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

Код: Выделить всё

mysql>use mysql;
Далее выбираем все имена пользователей, которые у нас существуют:

Код: Выделить всё

select user from user;
В ответ на команду будут выведены все пользователи MySQL.

Для того, чтобы узнать привилегии пользователя в MySQL, используя консоль, выполняем:

Код: Выделить всё

show grants for vasya@localhost;
Ответить