zobrazit přihlášení k serveru (všimněte si, že %
znamená libovolný hostitel nebo zástupný znak)
select user,host from mysql.user;
+-----------+------------+
| user | host |
+-----------+------------+
| ajax_guy | % |
| joe7 | % |
| joe8 | % |
+-----------+------------+
ukázat, jaké granty existují pro určitého uživatele.
show grants for 'ajax_guy'@'%';
+----------------------------------------------------------------------
| Grants for [email protected]%
+----------------------------------------------------------------------
| GRANT USAGE ON *.* TO 'ajax_guy'@'%' IDENTIFIED BY PASSWORD ...
| GRANT ALL PRIVILEGES ON `ajax_stuff`.* TO 'ajax_guy'@'%'
| GRANT ALL PRIVILEGES ON `ajax_stuff`.`ajax_stuff` TO 'ajax_guy'@'%'
+----------------------------------------------------------------------
Jak udělit přístup k určité databázi určitému přihlášení. Níže udělujeme všechna práva uživateli na so_gibberish
databáze .
grant ALL on so_gibberish.* to 'ajax_guy'@'%';
Podívejte se na platné granty nyní pro toto přihlášení
+----------------------------------------------------------------------
| Grants for [email protected]%
+----------------------------------------------------------------------
| GRANT USAGE ON *.* TO 'ajax_guy'@'%' IDENTIFIED BY PASSWORD ...
| GRANT ALL PRIVILEGES ON `ajax_stuff`.* TO 'ajax_guy'@'%'
| GRANT ALL PRIVILEGES ON `so_gibberish`.* TO 'ajax_guy'@'%'
| GRANT ALL PRIVILEGES ON `ajax_stuff`.`ajax_stuff` TO 'ajax_guy'@'%'
+----------------------------------------------------------------------
Vytvořte nové přihlašovací údaje drew_saturday
s heslem friday987
.Má všechna práva v databázi so_gibberish
a může se přihlásit z libovolného hostitele (%
)
grant ALL on so_gibberish.* to 'drew_saturday'@'%' IDENTIFIED BY 'friday987';
select user,host,password from mysql.user where user='drew_saturday';
+---------------+------+-------------------------------------------+
| user | host | password |
+---------------+------+-------------------------------------------+
| drew_saturday | % | *4600ED0F377308959665877BD327D4788DC2071F |
+---------------+------+-------------------------------------------+
To heslo výše je mimochodem hashované heslo.
Poznámka:pro MySQL 5.7 by výše uvedený příkaz byl:
select user,host,authentication_string from mysql.user where user='drew_saturday';
Manuální stránka Mysql na Grant
. Neudělujte nadměrná práva uživatelům pomocí grant ALL on *. ...
. To by bylo pro všechny databáze v systému. Stačí si přečíst návod a méně je více.
Někdy chtějí administrátoři udělit přístup pouze k několika tabulkám v databázi (ne všem tabulkám v ní) k přihlášení. Manuál si musíte přečíst.
A poslední věc. 'drew_saturday'@'%' je jiné přihlášení než 'drew_saturday'@'NOT-local' (vypůjčené z vašeho titulu). Jsou to různá přihlášení s různými právy. To je pointa první věci, kterou jsem tam nahoře napsal.