Mysql
 sql >> Database >  >> RDS >> Mysql

Come creare utenti in MySQL

Molte volte potrebbe essere necessario creare un nuovo utente in MySQL per gestire l'accesso degli utenti al database. In questo articolo vedremo come creare utenti in MySQL usando il comando MySQL CREATE USER.

Come creare utenti in MySQL

Ecco i passaggi per creare un utente in MySQL. Useremo l'istruzione MySQL CREATE USER per creare un account utente.

Ecco la sintassi della query CREATE USER

CREATE USER [IF NOT EXISTS] username@hostname
IDENTIFIED BY 'password';

Nella query precedente, devi specificare il nome utente e nome host come nome utente@nome host dopo le parole chiave CREATE USER.

Username è il nome dell'utente (es. test_user) e hostname è l'host (es. 127.0.0.1) da cui l'utente può connettersi al tuo database.

Se i tuoi utenti accedono al database dallo stesso IP host del server del database, puoi utilizzare 127.0.0.1 o localhost come nome host

password è la password (es. pass123) per questo nuovo utente.

Puoi opzionalmente utilizzare la parola chiave SE NON ESISTE per creare un nuovo utente solo se non esiste.

Bonus Leggi:Come creare database in MySQL

MySQL CREATE USER Esempi

Ecco un esempio di query MySQL CREATE USER per creare un nuovo utente.

CREATE USER 'test_user'@127.0.0.1
IDENTIFIED BY 'pass123';

L'utente di cui sopra può connettersi solo da 127.0.0.1 (noto anche come localhost), ovvero dallo stesso host in cui si trova il database. Questo nuovo utente non sarà in grado di connettersi al tuo database da nessun altro IP (altri laptop, workstation, ecc.).

Se desideri che il tuo utente sia in grado di connettersi da un indirizzo IP remoto (ad es. 54.245.23.21), specificalo come nome host

CREATE USER 'test_user'@54.245.23.21
IDENTIFIED BY 'pass123';

Puoi anche utilizzare nomi di dominio ed endpoint al posto del nome host. Ecco un esempio di nome utente del database per Amazon RDS. Utilizzeremo l'endpoint RDS (mysql–instance1.123456789012.us-east-1.rds.amazonaws.com ) per il nome host.

CREATE USER 'test_user'@mysql–instance1.123456789012.us-east-1.rds.amazonaws.com 
IDENTIFIED BY 'pass123';

Bonus Leggi:Come creare tabelle in MySQL

Se ometti il ​​nome host dalla query precedente, consentirà al nuovo utente di connettersi da qualsiasi host.

Ecco un esempio

CREATE USER 'test_user'@
IDENTIFIED BY 'pass123';

Nella query precedente, puoi anche utilizzare username@% (ad es. test_user@%)

Se nome utente e nome host contengono caratteri speciali, è necessario specificare nome utente e nome host tra virgolette singole('), virgolette doppie(“) o backtick (`). Ecco un esempio.

CREATE USER 'test_user#1'@127.0.0.1
IDENTIFIED BY 'pass123';

Bonus Leggi:Come aggiungere una chiave esterna in MySQL

Tieni presente che il nuovo utente creato non avrà alcun privilegio, ovvero non sarà in grado di interrogare alcun database. Per questo, devi concedere i privilegi utente usando l'istruzione GRANT.

Ecco un esempio di concessione di tutti i privilegi al nuovo utente, per il database sample_db

mysql> grant all privileges on sample_db.* to 'test_user#1'@127.0.0.1;

Si spera che ora sia possibile creare utenti in MySQL.

Ubiq semplifica la visualizzazione dei dati in pochi minuti e il monitoraggio in dashboard in tempo reale. Provalo oggi!