Ich habe eine Datenbank erstellt, zum Beispiel 'mydb'.
CREATE DATABASE mydb CHARACTER SET utf8 COLLATE utf8_bin;
CREATE USER 'myuser'@'%' IDENTIFIED BY PASSWORD '*HASH';
GRANT ALL ON mydb.* TO 'myuser'@'%';
GRANT ALL ON mydb TO 'myuser'@'%';
GRANT CREATE ON mydb TO 'myuser'@'%';
FLUSH PRIVILEGES;
Jetzt kann ich mich von überall in die Datenbank einloggen, aber keine Tabellen erstellen.
Wie kann ich alle Berechtigungen für diese Datenbank und (in Zukunft) für die Tabellen gewähren? Ich kann keine Tabellen in der Datenbank "mydb" erstellen. Ich bekomme immer:
CREATE TABLE t (c CHAR(20) CHARACTER SET utf8 COLLATE utf8_bin);
ERROR 1142 (42000): CREATE command denied to user 'myuser'@'...' for table 't'
5 Stimmen
Sie sollten Folgendes verwenden
FLUSH PRIVILEGES;
nur, wenn Sie die Fördertabellen direkt mit Anweisungen wieINSERT
,UPDATE
, oderDELETE