Тази статия обяснява различни методи за попълване на подробностите за потребителите в MySQL. Можем да видим списъка с потребители, като използваме някой от следните методи.
- MySQL Workbench
- Инструмент за команден ред на MySQL.
Околна среда S монтаж
За демонстрация инсталирах MySQL Server 8.0 на Windows 10 и създадох потребител на име NisargU. Изпълнете заявката по-долу, за да създадете потребител.
mysql> create user NisargU identified by '[email protected]';
Изход
Изпълнете следната заявка, за да предоставите привилегии на потребителя на NisargU.
mysql> Grant ALL on *.* to 'NisargU';
Изход
Сега нека видим как можем да попълним списъка с потребителите, използвайки инструментите на командния ред на MySQL.
Как да преглеждате потребители с MySQL C заповед-L инеТ ool
За разлика от SHOW TABLE, SHOW DATABASES MySQL Server няма командата SHOW USERS. Можем да попълним данните за потребителя, като изпълняваме заявки в системни таблици. Нека видим как можем да получим данните от системните таблици.
Пример 1. Вижте всички потребители в MySQL
Можем да използваме mysql.User таблица, за да попълните списъка с потребители, създадени в MySQL сървъра.
Запитване
mysql> select host as `Host Name` ,user as `User Name` from mysql.user;
Изход
Забележка: За да изпълни горната заявка в таблицата, на потребителя трябва да бъде предоставена роля на DBA.
Ако искате да попълните повече информация за потребителите, можете да добавите колона от mysql.user таблици. За да видите структурата на таблицата mysql.user, изпълнете следната заявка.
Запитване
mysql>DESC mysql.user;
Изход
Пример 2. Преглед на подробностите за конкретни потребители
Да предположим, че искаме да попълним името на хоста, потребителското име, състоянието на изтичане на паролата и датата на промяна на паролата. За да направите това, изпълнете следната заявка:
mysql> select Host, User, authentication_string ,password_expired, password_last_changed from mysql.user where user='NisargU';
Изход
Пример 3. Преглед на текущ потребител
Да предположим, че искате да попълните потребителя, свързан към MySQL сървъра; можете да използвате user() или current_user() функция. Първо, нека се свържем с MySQL сървъра чрез NisargU потребител.
Заявката за свързване с MySQL:
C:\Users\Nisarg>mysql -u NisargU -p
Изход
Заявката за преглед на потребителя с функция USER():
mysql> select user() as `Connected User`;
Изход
Заявката за преглед на потребителя с current_user() функция:
mysql> select current_user() as `Connected User`;
Изход
Пример 4. Преглед на списъка с база данни и асоциирани потребители
Например, искате да попълните списъка с бази данни и свързани потребители с него. Можете да попълните информацията, като направите заявка за mysql.db таблица.
Запитване:
mysql> SELECT host,db, user FROM mysql.db;
Изход:
Ако искате да попълните подробностите за привилегиите, присвоени на потребителя на NisargU, изпълнете следната заявка:
mysql> SELECT * FROM mysql.db where user='NisargU' \G;
Изход
Пример 5. Показване на потребители, свързани с MySQL сървър
Ако искате да попълните списъка с потребителите, свързани с MySQL Server, можем да изпълним заявката в information_schema.processlist таблица.
Запитване
mysql> select ID, User, Host, DB, command,time `Query execution time`, state `Query execution status` from information_schema.processlist;
Изход
Както можете да видите, има четирима потребители, свързани към MySQL сървъра.
Сега нека видим как можем да попълним списъка с потребителите, използвайки MySQL работната маса.
Как да V т.е. P rivilegesG оценен на U сер
Можем да използваме функции SHOW GRANTS(), за да попълним списъка с привилегиите, предоставени на конкретните потребители.
Забележка: Резултатът от заявката е дълъг, така че използвах MySQL workbench, за да видя изхода.
Да предположим, че искаме да попълним привилегиите, предоставени на потребителя на NisargU. За да направите това, изпълнете заявката по-долу.
mysql> show grants for NisargU;
Изход
Нека видим как можем да видим списъка на потребителите с техните привилегии, като използваме MySQL workbench.
Как да преглеждате потребители с MySQL Workbench
Можем да видим подробностите за потребителите от работната маса на MySQL. Отворете MySQL Workbench и се свържете със сървъра, като използвате root вход.
В Navigator Pan щракнете върху Администриране раздел. В секцията Управление щракнете върху Потребители и привилегии .
В десния прозорец можете да видите списъка на потребителите, създадени на MySQL сървъра. За да видите техните подробности, изберете произволен потребител от списъка.
Сега можете да видите следните подробности за избрания потребител:
Данни за вход
В Вход раздел подробности, можете да видите подробностите за потребителя, включително име за влизане, тип на удостоверяване и низ за удостоверяване.
Ограничения на акаунта
В Ограничения на акаунта раздел, можете да зададете следните параметри:
- Общ брой заявки, които акаунтът може да изпълни в рамките на един час.
- Общо изявление за актуализиране, което акаунтът може да изпълнява на час.
- Брой пъти акаунтът може да се свърже със сървъра на час.
- Броят на едновременните връзки към сървъра.
В нашия случай сме използвали настройките по подразбиране за NisargU потребител.
Административни роли
В Административните роли раздел, можете да видите глобалните привилегии и административни роли, присвоени на потребителя. В нашия случай сме предоставили DBA роля за NisargU потребител.
Привилегии на схема
В Привилегии за схема раздел, можете да видите списъка с привилегиите, предоставени на конкретната база данни на потребителя. В нашата демонстрация сме предоставили INSERT, UPDATE, DELETE, SELECT, EXECUTE и ПОКАЖЕТЕ ИЗГЛЕД роли на потребителя на NisargU в Sakiladb база данни.
Резюме
„Как да извлечем потребителите в MySQL? ” е много често задаван въпрос от младши администратори на бази данни. В тази статия проучихме различни методи за преглед на потребителите, създадени в MySQL Server. Научихме как можем да извлечем списъка с помощта на MySQL Workbench и MySQL инструмента от командния ред.