Først skal du identificere den bruger, du er logget på som:
select user();
select current_user();
Resultatet for den første kommando er, hvad du forsøgte at logge ind som, den anden er, hvad du faktisk oprettede forbindelse som. Bekræft, at du er logget ind som [email protected]
i mysql.
Grant_priv
til [email protected]
. Her er hvordan du kan tjekke.
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 |
+-----------+------------------+-------------------------------------------+------------+------------+
Du kan se, at Grant_priv er indstillet til N for [email protected] Dette skal være Y. Nedenfor kan du se, hvordan du løser dette:
UPDATE mysql.user SET Grant_priv='Y', Super_priv='Y' WHERE User='root';
FLUSH PRIVILEGES;
GRANT ALL ON *.* TO 'root'@'localhost';
Jeg loggede ind igen, det var fint.