Kód chyby: 1133. Nelze ' v uživatelské tabulce najít žádný odpovídající řádek

Čtu O „Relly „Learning MySQL“ a říká, že můžete vytvořit uživatele v MySQL právě takto:

mysql> GRANT ALL ON *.* TO "jill"@"%.invyhome.com" IDENTIFIED BY "the_password"; Query OK, 0 rows affected (0.01 sec) 

Ale když se o to pokusím:

-> grant select on testgrounds.personas to ""@"localhost"; --> Error Code: 1133. Can"t find any matching row in the user table 

Ale uspěje to, když použiji heslo:

->grant select on testgrounds.personas to ""@"localhost" identified by "pass"; --> 0 row(s) affected 

Musel jsem obnovit oprávnění pro root uživatele, protože jsem experimentoval a pokazil jsem je, takže si myslím, že předtím, než to udělám, mohu skutečně použít prohlášení v knize (100% si nepamatuji)

-> select current_user; --> "root@localhost" -> show grants; --> "GRANT ALL PRIVILEGES ON *.* TO \"root\"@\"localhost\" IDENTIFIED BY PASSWORD \"*4ACFE3202A5FF5CF467898FC58AAB1D615029441\" WITH GRANT OPTION" --> "GRANT ALL PRIVILEGES ON `testgrounds`.* TO \"root\"@\"localhost\" WITH GRANT OPTION" --> "GRANT PROXY ON \"\"@\"\" TO \"root\"@\"localhost\" WITH GRANT OPTION" 

Dochází k chybě při instalaci nebo nastavení MySQL?

Odpověď

To není problém s MySQL instalace nebo nastavení.

Každý název účtu se skládá z názvu uživatele i hostitele, například „jméno_uživatele“ @ „název_hostitele“, i když název hostitele není uveden. Z MySQL Reference Manual:

Názvy účtů MySQL se skládají z uživatelského jména a názvu hostitele. To umožňuje vytváření účtů pro uživatele se stejným názvem, kteří se mohou připojit z různých hostitelů.

To také umožňuje MySQL udělovat různé úrovně oprávnění podle toho, které hostitele, kterého používají k připojení.

Při aktualizaci grantů pro účet, kde MySQL nerozpozná část hostitele, vrátí chybový kód 1133, pokud nemá heslo k identifikaci tohoto účtu.

Také MySQL umožní zadat název účtu pouze podle jeho uživatelského jména, ale v tomto případě je považováno za „uživatelské_jméno“ @ „%“.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *