Pokračujte jako dříve v kroku 2, to znamená restartujte démona mysql v nouzovém režimu.
Zadejte příkaz
select user,host,password from mysql.user where user='root';
vyjmout a vložit výstup do textového editoru pro porovnání (hodnot hashovaného sloupce hesla) před a za následující.
U každého řádku si všimněte host
sloupec. V následujícím příkladu předpokládám, že mám dva řádky. Jeden řádek má %
jako hostitel, další má localhost
Pro každý řádek, který měl host
variaci, vydáte jeden příkaz. V mém příkladu výše bych tedy vydal celkem 2 příkazy, například:
SET PASSWORD FOR 'root'@'%' = PASSWORD('MyNewPassword');
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');
spustit
select user,host,password from mysql.user where user='root';
vyjmout a vložit do textového editoru. Všimněte si změny hodnot hash hesel.
Vypněte démona z nouzového režimu a restartujte normálně.
Zkuste se přihlásit jako root pomocí MyNewPassword
Zde je několik odkazů. Ten pro SET PASSWORD syntaxe a často dalším krokem pro syntaxe GRANT .
Pro úzký rozsah této otázky, tedy přihlášení, by granty nebyly nutné. Ale bez řádných povolení k databázím by se člověk dostal do karantény a nemohl by toho moc dělat, kromě jednoduchých příkazů jako select now();
Netvrdím, že váš uživatel root nemá po změně hesla oprávnění. Granty jsou pro normální uživatele nezbytné.