FEIL 1044 (42000): Access denied for user ''@'localhost' to database 'db'

Jeg vil begynne å skrive spørringer i MySQL.

Vis tilskudd viser:

+--------------------------------------+
| Grants for @localhost                |
+--------------------------------------+
| GRANT USAGE ON *.* TO ''@'localhost' |
+--------------------------------------+

Jeg har ikke noen bruker-id, men når jeg vil lage en bruker, har jeg ikke privilegier, og jeg vet heller ikke hvordan jeg skal lage privilegier når jeg ikke engang har en bruker!

mysql> CREATE USER 'parsa'@'localhost' IDENTIFIED BY 'parsa';
ERROR 1227 (42000): Access denied; you need (at least one of) the CREATE USER pr
ivilege(s) for this operation

Jeg prøvde å logge på som root:

mysql> mysql -u root -p;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'mysql
 -u root -p' at line 1
mysql> mysql -u root -p root;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'mysql
 -u root -p root' at line 1
Løsning

Nei, du bør kjøre mysql -u root -p i bash, ikke på MySQL-kommandolinjen. Hvis du er i mysql, kan du avslutte ved å skrive exit.

Kommentarer (7)

Du må kanskje opprette en root-konto for MySQL-databasen din:

I terminaltypen:

mysqladmin -u root password 'root password goes here'

Og deretter for å påkalle MySQL-klienten:

mysql -h localhost -u root -p
Kommentarer (2)

Det kan være lurt å prøve den fullstendige påloggingskommandoen:

mysql -h host -u root -p 

der host vil være 127.0.0.1.

Gjør dette bare for å forsikre deg om at det finnes et samarbeid.

Ved å bruke mysql -u root -p kan jeg gjøre mange databasesøk, men nekter å opprette databaser på grunn av en baneinnstilling.

Kommentarer (0)