Možná bezpečnostní opatření. Můžete zkusit přidat nový administrátorský účet:
mysql> CREATE USER 'monty'@'localhost' IDENTIFIED BY 'some_pass';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost'
-> WITH GRANT OPTION;
mysql> CREATE USER 'monty'@'%' IDENTIFIED BY 'some_pass';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'%'
-> WITH GRANT OPTION;
Ačkoli jak Pascal a další poznamenali, není dobrý nápad mít uživatele s tímto druhem přístupu otevřeného pro jakoukoli IP. Pokud potřebujete administrátora, použijte root a nechte ho na localhost. Pro jakoukoli jinou akci určete přesně ta oprávnění, která potřebujete, a omezte přístupnost uživatele, jak Pascal navrhuje níže.
Upravit:
Z MySQL FAQ:
Pokud nemůžete zjistit, proč jste odepřeli přístup, odstraňte z uživatelské tabulky všechny položky, které mají hodnoty Hostvalues obsahující zástupné znaky (položky obsahující znaky '%' nebo '_'). Velmi častou chybou je vložení nové položky s Host='%' andUser='some_user', protože si myslíte, že vám to umožňuje zadat localhost pro připojení ze stejného počítače. To proto, že to nefunguje, je to, že výchozí oprávnění zahrnují vstup s Host='localhost' a User=''. Protože tato položka má Hostvalue 'localhost', která je specifičtější než '%', použije se při připojování z localhostu bez preference nové položky! Správným postupem je vložit druhý záznam s Host='localhost' andUser='some_user', nebo smazat záznam s Host='localhost' andUser=''. Po smazání záznamu nezapomeňte vydat prohlášení FLUSH PRIVILEGES k opětovnému načtení tabulek grantů. Viz také část 5.4.4 – „AccessControl, Fáze 1:ConnectionVerification“.