Tento článek vysvětluje různé metody, jak vyplnit podrobnosti o uživatelích v MySQL. Seznam uživatelů můžeme zobrazit pomocí některé z následujících metod.
- Workbench MySQL
- Nástroj příkazového řádku MySQL.
Prostředí S nastavení
Pro demonstraci jsem nainstaloval MySQL Server 8.0 na Windows 10 a vytvořil uživatele s názvem NisargU. Spusťte níže uvedený dotaz a vytvořte uživatele.
mysql> create user NisargU identified by '[email protected]';
Výstup

Provedením následujícího dotazu udělte uživateli NisargU oprávnění.
mysql> Grant ALL on *.* to 'NisargU';
Výstup

Nyní se podívejme, jak můžeme naplnit seznam uživatelů pomocí nástrojů příkazového řádku MySQL.
Jak zobrazit uživatele pomocí MySQL C ommand-L ine T ool
Na rozdíl od SHOW TABLE, SHOW DATABASES MySQL Server nemá příkaz SHOW USERS. Údaje o uživateli můžeme naplnit spuštěním dotazů na systémové tabulky. Podívejme se, jak můžeme získat data ze systémových tabulek.
Příklad 1. Zobrazení všech uživatelů v MySQL
Můžeme použít mysql.User tabulka k naplnění seznamu uživatelů vytvořených na serveru MySQL.
Dotaz
mysql> select host as `Host Name` ,user as `User Name` from mysql.user;
Výstup

Poznámka: Pro provedení výše uvedeného dotazu v tabulce musí mít uživatel přidělenou roli DBA.
Pokud chcete naplnit více informací o uživatelích, můžete přidat sloupec z tabulek mysql.user. Chcete-li zobrazit strukturu tabulky mysql.user, spusťte následující dotaz.
Dotaz
mysql>DESC mysql.user;
Výstup

Příklad 2. Zobrazení podrobností o konkrétních uživatelích
Předpokládejme, že chceme vyplnit jméno hostitele, uživatelské jméno, stav vypršení platnosti hesla a datum změny hesla všech uživatelů. Chcete-li to provést, spusťte následující dotaz:
mysql> select Host, User, authentication_string ,password_expired, password_last_changed from mysql.user where user='NisargU';
Výstup

Příklad 3. Zobrazení aktuálního uživatele
Předpokládejme, že chcete naplnit uživatele připojeného k serveru MySQL; můžete použít user() nebo current_user() funkce. Nejprve se připojte k serveru MySQL pomocí NisargU uživatel.
Dotaz pro připojení k MySQL:
C:\Users\Nisarg>mysql -u NisargU -p
Výstup

Dotaz na zobrazení uživatele s funkcí USER():
mysql> select user() as `Connected User`;
Výstup

Dotaz na zobrazení uživatele pomocí current_user() funkce:
mysql> select current_user() as `Connected User`;
Výstup

Příklad 4. Zobrazení seznamu databáze a přidružených uživatelů
Chcete například naplnit seznam databází a přidružených uživatelů. Informace můžete vyplnit dotazem na mysql.db tabulka.
Dotaz:
mysql> SELECT host,db, user FROM mysql.db;
Výstup:

Pokud chcete vyplnit podrobnosti o oprávněních přiřazených uživateli NisargU, spusťte následující dotaz:
mysql> SELECT * FROM mysql.db where user='NisargU' \G;
Výstup

Příklad 5. Zobrazit uživatele připojené k serveru MySQL
Pokud chcete naplnit seznam uživatelů připojených k serveru MySQL, můžeme spustit dotaz na information_schema.processlist tabulka.
Dotaz
mysql> select ID, User, Host, DB, command,time `Query execution time`, state `Query execution status` from information_schema.processlist;
Výstup

Jak vidíte, k serveru MySQL jsou připojeni čtyři uživatelé.
Nyní se podívejme, jak můžeme naplnit seznam uživatelů pomocí pracovního stolu MySQL.
Jak na to zobrazit P pohoršení G křičel na U sers
Můžeme použít funkce SHOW GRANTS() k naplnění seznamu oprávnění udělených konkrétním uživatelům.
Poznámka: Výstup dotazu je zdlouhavý, proto jsem k zobrazení výstupu použil pracovní plochu MySQL.
Předpokládejme, že chceme naplnit oprávnění udělená uživateli NisargU. Chcete-li to provést, spusťte níže uvedený dotaz.
mysql> show grants for NisargU;
Výstup

Podívejme se, jak můžeme zobrazit seznam uživatelů s jejich oprávněními pomocí pracovního stolu MySQL.
Jak zobrazit uživatele pomocí MySQL Workbench
Podrobnosti o uživatelích můžeme zobrazit z pracovního stolu MySQL. Otevřete MySQL Workbench a připojte se k serveru pomocí přihlášení root.

V Navigátoru Pan klikněte na Správa tab. V části Správa klikněte na Uživatelé a oprávnění .

V pravém podokně můžete vidět seznam uživatelů vytvořených na serveru MySQL. Chcete-li zobrazit jejich podrobnosti, vyberte libovolného uživatele ze seznamu.

Nyní můžete zobrazit následující podrobnosti o vybraném uživateli:
Přihlašovací údaje
V Přihlášení na kartě podrobnosti můžete zobrazit podrobnosti o uživateli, včetně přihlašovacího jména, typu ověření a autentizačního řetězce.

Omezení účtu
V části Limity účtu můžete nastavit následující parametry:
- Celkový počet dotazů, které může účet provést během jedné hodiny.
- Celkový aktualizační výpis, který může účet provést za hodinu.
- Kolikkrát se může účet připojit k serveru za hodinu.
- Počet současných připojení k serveru.
V našem případě jsme použili výchozí nastavení pro NisargU uživatel.

Administrativní role
V části Administrátorské role můžete zobrazit globální oprávnění a administrativní role přiřazené uživateli. V našem případě jsme udělili DBA roli pro NisargU uživatel.

Oprávnění schématu
V oprávněních schématu můžete zobrazit seznam oprávnění udělených uživateli pro konkrétní databázi. V naší ukázce jsme povolili INSERT, UPDATE, DELETE, SELECT, EXECUTE a ZOBRAZIT ZOBRAZENÍ role pro uživatele NisargU na Sakiladb databáze.

Shrnutí
„Jak získat uživatele v MySQL? “ je velmi častá otázka, kterou pokládají administrátoři mladších databází. V tomto článku jsme prozkoumali různé způsoby zobrazení uživatelů vytvořených na serveru MySQL. Naučili jsme se, jak můžeme získat seznam pomocí pracovního stolu MySQL a nástroje příkazového řádku MySQL.