2016-06-29 1 views
0

Ich muss die Super-Berechtigungen für ein Konto nicht auf localhost aktualisieren, um die binäre Protokollierung zu deaktivieren. Wenn ich versuche, die Berechtigungen zu gewähren:MySQL-Fehler 1470 (HY000) Zeichenfolge% s ist zu lang für den Hostnamen

ALLE PRIVILEGES EINGEBEN . TO 'Benutzer' @ '% s' MIT GRANT OPTION;

Es besagt, dass die Host-Zeichenkette% s mehr als 60 Zeichen hat (es sind 74 Zeichen). Alle Foren, die ich für dieses Problem gesehen habe, scheinen sich um falsche Anführungszeichen zu drehen oder `` anstelle von Anführungszeichen für den Hostnamen zu verwenden, aber das hat bei mir nicht funktioniert.

Gibt es eine Möglichkeit, die Super-Einstellung auf andere Weise zu aktualisieren?

Antwort

1

Für einen zu langen Hostnamen würde ich lieber die entsprechende IP-Adresse verwenden.

Ip Auflösung wesentlich ist für den grant Betrieb als SQL-Anweisung auszuführen, auch wenn ein Host-Name als Argument in SQL übergeben wird, ist es umgewandelt wird darunter liegende erste Adresse, die von nslookup/dig/host unabhängig getan werden könnte.

+0

Das ist wie ein Charme gearbeitet! – Jain

0

Ich löste dies durch Entfernen der ''. das heißt von ...

CREATE USER '[email protected]' IDENTIFIED BY 'password'; 

ERROR 1470 (HY000): String '[email protected]' is too long for user name (should be no longer than 16) 

To ...

CREATE USER [email protected] IDENTIFIED BY 'password'; 

Query OK, 0 rows affected (0.00 sec) 

ich denke, die @ der '' aus benötigen. :)

+0

Anderes Problem. –

Verwandte Themen