Questo articolo mostra come creare e modificare utenti in MySQL®.
Accedi
-
Accedi al tuo server cloud.
-
Accedi a MySQL eseguendo il seguente comando:
mysql -u root -p
Viene richiesta la password di root di MySQL (notare che non è la stessa della password di root del Cloud Server).
Crea un nuovo utente
Puoi creare un nuovo utente e allo stesso tempo impostare una password per l'utente, come mostrato nel seguente comando di esempio, che crea un utente con il nome utentetest
:
CREATE USER 'test'@'localhost' IDENTIFIED BY 'newpassword';
Successivamente, devi svuotare i privilegi, che ricarica l'user
tabella in MySQL. Devi eseguire questo passaggio ogni volta che aggiungi o modifichi un utente.
L'esempio seguente mostra il comando che usi per svuotare i privilegi:
FLUSH PRIVILEGES;
Done.
Permissions - Select
Imposta le autorizzazioni per il nuovo utente
A questo punto, il tuo nuovo utente (test
) non ha autorizzazioni impostate e non può fare nulla. Potresti voler iniziare a impostare le autorizzazioni assegnando SELECT
autorizzazioni (di sola lettura) su tutti i database disponibili. Puoi concedere autorizzazioni select eseguendo il comando seguente:
GRANT SELECT ON * . * TO 'test'@'localhost';
Permissions - All
Crea un nuovo database e consenti test
per avere pieno accesso ad esso in modo che possano creare, leggere, aggiornare ed eliminare record, come mostrato nel seguente esempio:
CREATE DATABASE mytestdb;
Now we have the database and the user, we can assign the privileges:
GRANT ALL PRIVILEGES ON `mytestdb` . * TO 'test'@'localhost';
Nota :devi includere i backtick che circondano il nome del database.
Questo è il tipo di autorizzazione che potresti voler usare quando stai configurando un utente e un database per un'applicazione web. L'utente non ha bisogno di accedere a nessun altro database.
Cancella i privilegi eseguendo il seguente comando:
FLUSH PRIVILEGES;
Accedi come nuovo utente
Per verificare che i permessi che hai impostato funzionino correttamente, accedi a MySQL come nuovo utente eseguendo il comando seguente:
mysql -u test -p
Quando richiesto, inserisci la password per il test
utente.
Dopo aver effettuato l'accesso come test
utente, prova a creare un nuovo database eseguendo il comando seguente:
CREATE DATABASE mytestdb2;
Viene visualizzato il seguente messaggio di errore:
ERROR 1044 (42000): Access denied for user 'test'@'localhost' to database 'mytestdb2'
Questo errore si verifica perché il test
l'utente ha solo ALL PRIVILEGES
per il database 'mytestdb' e SELECT
privilegi per tutto il resto.
Rilascia un utente
Se è necessario eliminare un utente, il processo è simile all'eliminazione di un database. L'esempio seguente mostra come eliminare il test
utente:
DROP USER 'test'@'localhost';
Nota :Devi essere loggato a MySQL come utente root per eseguire questa azione.