2017-09-06 2 views
0

Fehler mit dropping Tabellen CREATE:USER MySQL

SQL query: 

DROP user IF EXISTS 's01'@'%'; 


MySQL said: Documentation 

#1064 - 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 'if exists 's01'@'%'' at line 1 

Fehler ohne Abwurf Tabellen:

SQL query: 

/*Students*/ CREATE User 's01'@'%' IDENTIFIED BY 'pw1'; 


MySQL said: Documentation 

#1396 - Operation CREATE USER failed for 's01'@'%' 

Beispiel von einigen meiner Code:

Drop user if exists 's01'@'%'; 

flush privileges; 

/*Students*/ 
Create User 's01'@'%' Identified by 'pw1'; 

ich nicht genau weiß, Was ist falsch. Ich habe nachgeschaut und gesagt, fügen Sie Flush-Privilegien hinzu, aber ich bekomme immer noch dieselben zwei Fehler.

+0

vielleicht ein Problem mit Privilegien? - https://dev.mysql.com/doc/refman/5.7/de/drop-user.html –

Antwort

1

Überprüfen Sie Ihre Version von MySQL mit select version();. Die Option IF EXISTS für DROP USER wurde in 5.7 hinzugefügt. Wenn Sie nicht 5.7 verwenden, erklärt das wahrscheinlich Ihren ersten Fehler.

Überprüfen Sie, ob der Benutzer existiert, indem Sie mysql.user Tabelle abfragen.

Benutzer auswählen, Host von mysql.user wo user = 's01';

Auch da Sie nicht einen Hostnamen anzugeben, führen nur

Benutzer DROP IF EXISTS 's01';
Benutzer '01 'erstellen Identifiziert durch' pw1 ';

Der Platzhalter Host (@ '%') ist impliziert.

Führen Sie auch SHOW GRANTS aus, um zu überprüfen, ob Ihr Benutzer über die richtigen Berechtigungen zum Erstellen und Ablegen von Benutzern verfügt.

Verwandte Themen