Il comando CREATE USER consente di creare nuovi utenti in MariaDB. Per eseguire questa ope­ra­zio­ne hai bisogno di permessi da admin. Per assegnare a un account i relativi permessi si usa il comando GRANT.

CREATE USER in MariaDB: i singoli passaggi

In MariaDB, il comando CREATE USER si usa per creare un nuovo utente. Di seguito, ti il­lu­stria­mo quali passaggi seguire.

Primo passaggio: con­net­ter­si a MariaDB

Il nuovo utente viene creato di­ret­ta­men­te in MariaDB. Per stabilire una con­nes­sio­ne, è suf­fi­cien­te aprire la riga di comando di MariaDB e accedere con il proprio nome utente e password. A tal proposito è im­por­tan­te che l’account uti­liz­za­to disponga di permessi da am­mi­ni­stra­to­re.

Secondo passaggio: usare CREATE USER

Per creare un nuovo utente in MariaDB, usa il comando CREATE USER. La sintassi è la seguente:

CREATE USER nomeutente@nomehost IDENTIFIED BY 'password';
sql

So­sti­tui­sci “no­meu­ten­te” con il nome utente de­si­de­ra­to, as­si­cu­ran­do­ti di as­se­gnar­gli un nome univoco. So­sti­tui­sci “nomehost” con il nome dell’host o l’indirizzo IP del server. Infine, specifica una password sicura per questo account.

Terzo passaggio: assegnare i permessi utente

Il passaggio suc­ces­si­vo consiste nell’assegnare al nuovo utente i permessi necessari. Questi sta­bi­li­sco­no ciò che un utente può fare all’interno del sistema. Più in basso spie­ghia­mo nel dettaglio quali sono i diversi permessi utente. Per assegnare i permessi si utilizza l’istru­zio­ne GRANT. La sintassi è la seguente:

GRANT permessiutente ON bancadati.tabella TO nomeutente@nomehost;
sql

Dopo aver usato il comando GRANT, spe­ci­fi­chi i permessi che l’account deve ricevere, se­pa­ran­do­li con delle virgole. Ad esempio, “bancadati.tabella” può riferirsi a un database specifico o a tabelle singole oppure può essere applicato all’intero sistema usando *.*. So­sti­tui­sci “no­meu­ten­te@nomehost” con il nome utente e l’host del nuovo account.

Quarto passaggio: applicare i permessi utente

Dopo aver assegnato i permessi utente, usa il comando FLUSH PRIVILEGES per ap­pli­car­li. Questo è il relativo comando:

FLUSH PRIVILEGES;
sql

Quinto passaggio: eseguire il login

Ora il nuovo utente può accedere al server MariaDB. Per farlo, deve digitare il nome utente e la relativa password. Ora dispone dei permessi utente che gli sono stati assegnati. Per eliminare un account, se disponi dei permessi di admin, puoi uti­liz­za­re il comando DROP USER.

Managed Database Services
Con­cen­tra­ti sul tuo progetto, noi pensiamo al resto
  • Partner IONOS Cloud
  • Soluzioni fles­si­bi­li e su misura
  • Data center situati in Europa

Lista dei permessi utente

I permessi utente, noti anche come “pri­vi­le­ges” in inglese, de­ter­mi­na­no quali azioni può eseguire un account MariaDB. Mentre l’utente admin dispone di tutti i permessi, è con­si­glia­bi­le limitare le au­to­riz­za­zio­ni assegnate agli altri account per evitare po­ten­zia­li problemi di sicurezza. Questi i permessi utente più comuni:

  • ALL: fornisce all’account tutti i permessi tranne GRANT OPTION.
  • GRANT OPTION: fornisce all’account tutti i permessi del proprio account.
  • SELECT: consente all’utente di accedere ai database o alle tabelle.
  • INSERT: consente all’utente di ag­giun­ge­re nuove righe all’interno di una tabella.
  • UPDATE: consente all’utente di ag­gior­na­re le righe.
  • DELETE: consente all’utente di can­cel­la­re le righe.
  • CREATE: consente all’utente di creare nuove tabelle o database.
  • ALTER: consente all’utente di mo­di­fi­ca­re la struttura di una tabella.
  • DROP: consente di can­cel­la­re tabelle o database.

Se in un secondo momento desideri mo­di­fi­ca­re i permessi utente, usa l’istru­zio­ne REVOKE. Per ottenere una pa­no­ra­mi­ca dei permessi assegnati, usa il comando SHOW GRANTS FOR.

OR REPLACE e IF NOT EXISTS

Quando cerchi di creare un nuovo account in MariaDB con il comando CREATE USER, se esiste già un utente con lo stesso nome il sistema vi­sua­liz­za un messaggio di errore. Per poter aggirare questo problema, il sistema di gestione dei database offre due opzioni: OR REPLACE e IF NOT EXISTS.

La sintassi di OR REPLACE è la seguente:

CREATE OR REPLACE USER nomeutente@nomehost IDENTIFIED BY 'password';
sql

Lo snippet qui sopra è una forma ab­bre­via­ta del seguente codice:

DROP USER IF EXISTS nomeutente@nomehost;
CREATE USER nomeutente@nomehost IDENTIFIED BY 'password';
sql

Il sistema verifica se esiste già un utente con il nome cor­ri­spon­den­te. In caso af­fer­ma­ti­vo, il vecchio account viene so­sti­tui­to da quello nuovo. Se invece non esiste alcun utente con quel nome, ne viene creato uno nuovo.

La sintassi di IF NOT EXISTS è la seguente:

CREATE USER IF NOT EXISTS nomeutente@nomehost IDENTIFIED BY 'password';
sql

Anche in questo caso, il sistema verifica se esiste già un account con lo stesso nome. Qualora l’account esista già, verrà vi­sua­liz­za­to un avviso e nessun account verrà so­vra­scrit­to. Se invece l’account non esiste, verrà creato un nuovo utente.

Consiglio

Nella nostra Digital Guide puoi scoprire di più su questo sistema open source di gestione dei database. Ad esempio, puoi leggere come fun­zio­na­no i comandi MariaDB CREATE DATABASE e MariaDB CREATE TABLE, quali sono le dif­fe­ren­ze e gli aspetti in comune fra MariaDB e MySQL e come eseguire l’in­stal­la­zio­ne di MariaDB.

Vai al menu prin­ci­pa­le