Ecco qualcosa che come amministratore di sistema o database, farai molto:crea un database, crea un utente del database, quindi assegnare l'autorizzazione a tale utente per operare su quel database. Possiamo fare la stessa cosa per concedere autorizzazioni anche ad altri database per quell'utente.
Ecco cosa vuoi sapere:
Innanzitutto, accedi al server del database come utente amministratore del database. Di solito questo sarà root (nota questo non è lo stesso utente root del tuo server Linux, questo è l'utente root del database).
$mysql -u root -p
una volta effettuato l'accesso, puoi creare il database, l'utente e assegnare i giusti privilegi:
mysql> CREATE DATABASE somedatabase;
mysql> CREATE USER 'new_user'@'localhost' IDENTIFIED BY 'their_password';
mysql> GRANT ALL PRIVILEGES ON somedatabase.* To 'new_user'@'localhost' IDENTIFIED BY 'their_password';
mysql> FLUSH PRIVILEGES;
Ecco cosa significa:
CREATE – Questo comando crea cose come database, utenti e tabelle. Nota che non puoi utilizzare nomi utente con trattini (i trattini bassi vanno bene).
GRANT – Questo comando concede (concede) l'autorizzazione a database, tabelle e così via.
TUTTI I PRIVILEGI – Questo dice che l'utente avrà tutti i privilegi standard come SELECT, INSERT, UPDATE, ecc. L'unico privilegio che non fornisce è l'uso della query GRANT, per ovvi motivi!
ON somedatabase.* – questo significa concedere tutti i privilegi al database indicato. Se modifichi * dopo il punto per il nome di una tabella, una routine o una vista, questo applicherà GRANT solo a quella tabella specificata, ecc.
TO 'nuovo_utente'@'localhost' – 'nuovo_utente' è il nome utente dell'account utente che stai creando. È molto importante assicurarsi di utilizzare virgolette singole ('). Il nome host 'localhost' dice a MySQL da quali host l'utente può connettersi. Nella maggior parte dei casi, questo sarà localhost, perché la maggior parte dei server MySQL è configurata solo per ascoltare il proprio host. Aprirlo ad altri host (soprattutto su Internet) non è sicuro.
IDENTIFICATO DA 'loro_password' – Questo imposta la password per quell'utente, sostituisci il testo their_password con una password sensata!
PRIVILEGI FLUSH – questo assicura che tutti i privilegi concessi siano aggiornati in mysql in modo che siano pronti per l'uso.
Spero questo sia di aiuto. Per ulteriori informazioni sulla creazione di utenti, fare riferimento alla MySQL Reference Guide.