Първо, идентифицирайте потребителя, като сте влезли:
select user();
select current_user();
Резултатът за първата команда е това, от което сте се опитали да влезете, а втората е това, с което всъщност сте се свързали. Потвърдете, че сте влезли като [email protected]
в mysql.
Grant_priv
до [email protected]
. Ето как можете да проверите.
mysql> SELECT host,user,password,Grant_priv,Super_priv FROM mysql.user;
+-----------+------------------+-------------------------------------------+------------+------------+
| host | user | password | Grant_priv | Super_priv |
+-----------+------------------+-------------------------------------------+------------+------------+
| localhost | root | ***************************************** | N | Y |
| localhost | debian-sys-maint | ***************************************** | Y | Y |
| localhost | staging | ***************************************** | N | N |
+-----------+------------------+-------------------------------------------+------------+------------+
Можете да видите, че Grant_priv е настроен на N за [email protected]> Това трябва да е Y. По-долу е описано как да коригирате това:
UPDATE mysql.user SET Grant_priv='Y', Super_priv='Y' WHERE User='root';
FLUSH PRIVILEGES;
GRANT ALL ON *.* TO 'root'@'localhost';
Влязох отново, беше добре.