Ho mysql Versione server: 5.5.32-0ubuntu0.12.04.1 (Ubuntu) installato linux Ubuntu 12.04 LTS.non può concedere privilegi al database mysql
Mi sembra di avere tutti i permessi come root. Posso creare un utente e un db. Tuttavia, non riesco a dare all'utente tutte le autorizzazioni per il db.
mio .my.cnf:
[client]
user=root
password=test
faccio il login attraverso mysql -u root -h localhost -p
, ma non posso effettuare il login senza l'opzione -p
se ho il .my.cnf (non è un problema, ma dispari).
C'erano un sacco di utenti root, così mi sono liberato di loro e ho questi utenti:
mysql> SELECT host,user,password FROM mysql.user;
+-----------+------------------+-------------------------------------------+
| host | user | password |
+-----------+------------------+-------------------------------------------+
| localhost | root | ***************************************** |
| localhost | debian-sys-maint | ***************************************** |
+-----------+------------------+-------------------------------------------+
mysql> SHOW GRANTS FOR 'root'@'localhost';
+----------------------------------------------------------------------------------------------------------------------+
| Grants for [email protected] |
+----------------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*****************************************' |
| GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION |
+----------------------------------------------------------------------------------------------------------------------+
Ora, creo un db, un utente. L'ultima riga mostra un errore quando concedo le autorizzazioni. Puoi per favore farmi sapere perché sto ricevendo questo errore e cosa posso fare per farlo funzionare?
mysql> create database staging;
Query OK, 1 row affected (0.00 sec)
mysql> CREATE USER 'staging'@'localhost' IDENTIFIED BY 'test';
Query OK, 0 rows affected (0.00 sec)
mysql> GRANT ALL PRIVILEGES ON staging.* TO 'staging'@'localhost';
ERROR 1044 (42000): Access denied for user 'root'@'localhost' to database 'staging'
sì. sicuramente devi uscire e rientrare. grazie per l'aiuto! – Slayer6