Stworzyłem bazę danych, na przykład „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;
Teraz mogę zalogować się do bazy danych z dowolnego miejsca, ale nie mogę tworzyć tabel.
Jak przyznać wszystkie uprawnienia do tej bazy danych i (w przyszłości) tabel. Nie mogę tworzyć tabel w bazie danych „mydb”. Zawsze dostaję:
CREATE TABLE t (c CHAR(20) CHARACTER SET utf8 COLLATE utf8_bin);
ERROR 1142 (42000): CREATE command denied to user 'myuser'@'...' for table 't'
FLUSH PRIVILEGES
?
FLUSH PRIVILEGES;
tylko jeśli modyfikować tabele dotacje bezpośrednio za pomocą oświadczenia, takie jak INSERT
, UPDATE
lubDELETE