Javorovélístky

Sepisuje Honza Javorek


Větvička: mysql

MySQL Error 1449 a pitomý phpMyAdmin

Tak se mi stalo, že jsem nahrál dump databáze na localhost a ona vyhodila asi takovýto error:

There is no ‚root‘@‚%‘ registered

Jeho číselné označení si přečtěte v titulku. Pátral jsem pátral a nakonec jsem zjistil, že příčin může být více a zjistit o tom nejde skoro nic. Prima. Každopádně můj problém byl způsobený tím, že v databázi byly pohledy (VIEW) a ty mají nastaveno určité oprávnění. Je to kvůli bezpečnosti atd. – viz manuál, no každopádně když si to tam nastavíte špatně, tak máte smůlu. Při tvorbě VIEW máte možnost zadat SQL SECURITY jako DEFINER nebo INVOKER. Někdy se může hodit to první, tedy přesné nastavení uživatele na serveru, ale pro normální přenos kamkoliv jinam bez omezení je asi lepší INVOKER, což by měl být ten, kdo pohled spouští. Zajímavá diskuse k tématu je zde.