Creare utenti in Database di Azure per MySQL

SI APPLICA A: Database di Azure per MySQL - Server singolo Database di Azure per MySQL - Server flessibile

Importante

Database di Azure per MySQL server singolo si trova nel percorso di ritiro. È consigliabile eseguire l'aggiornamento a Database di Azure per MySQL server flessibile. Per altre informazioni sulla migrazione a Database di Azure per MySQL server flessibile, vedere Che cosa accade a Database di Azure per MySQL server singolo?

Questo articolo descrive come creare utenti per Database di Azure per MySQL.

Nota

Questo articolo fa riferimento al termine slave, che Microsoft non usa più. Quando il termine verrà rimosso dal software, verrà rimosso anche dall'articolo.

È stato specificato un nome utente e una password amministratore del server durante la creazione del server Database di Azure per MySQL. Per altre informazioni, vedere questa guida introduttiva. È possibile determinare il nome utente amministratore del server nella portale di Azure.

L'utente amministratore del server dispone di questi privilegi:

SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER

Dopo aver creato un database di Azure per il server MySQL, è possibile usare il primo account amministratore del server per creare altri utenti e concedere loro l'accesso amministratore. È anche possibile usare l'account amministratore del server per creare utenti con privilegi inferiori con accesso ai singoli schemi di database.

Nota

Il privilegio SUPER e il ruolo DBA non sono supportati. Esaminare i privilegi nell'articolo sulle limitazioni per comprendere cosa non è supportato nel servizio.

Plug-in password come validate_password e caching_sha2_password non sono supportati dal servizio.

Creazione di un database

  1. Ottenere le informazioni per la connessione e il nome dell'utente amministratore.

    Per connettersi al server di database sono necessari il nome completo e le credenziali di accesso amministratore. È possibile trovare facilmente il nome del server e le informazioni di accesso nel server Panoramica o nella pagina Proprietà del portale di Azure.

  2. Usare l'account amministratore e la password per connettersi al server di database. Usare lo strumento client preferito, MySQL Workbench, mysql.exe o HeidiSQL.

Nota

Se non si è certi di come connettersi, vedere Connettersi ed eseguire query sui dati per server singolo oppure connettersi ed eseguire query sui dati per il server flessibile.

  1. Modificare ed eseguire il codice SQL seguente. Sostituire il valore db_user segnaposto con il nuovo nome utente desiderato. Sostituire il valore testdb segnaposto con il nome del database.

    Questo codice SQL crea un nuovo database denominato testdb. Crea quindi un nuovo utente nel servizio MySQL e concede all'utente tutti i privilegi per il nuovo schema del database (testdb.*).

    CREATE DATABASE testdb;
    

Creare un utente non amministratore

Dopo aver creato il database, è possibile iniziare creando un utente non amministratore usando l'istruzione CREATE USER MySQL.

CREATE USER 'db_user'@'%' IDENTIFIED BY 'StrongPassword!';

GRANT ALL PRIVILEGES ON testdb . * TO 'db_user'@'%';

FLUSH PRIVILEGES;

Verificare le autorizzazioni utente

Per visualizzare i privilegi consentiti per l'utente db_user nel database testdb , eseguire l'istruzione SHOW GRANTS MySQL.

USE testdb;

SHOW GRANTS FOR 'db_user'@'%';

Connessione al database con il nuovo utente

Accedere al server, specificando il database designato e usando il nuovo nome utente e la nuova password. Questo esempio mostra la riga di comando di MySQL. Quando si usa questo comando, viene richiesta la password dell'utente. Usare il nome del server, il nome del database e il nome utente. Vedere come connettere il singolo server e la flessibilità nella tabella seguente.

Tipo di server Utilizzo
Server unico mysql --host mydemoserver.mysql.database.azure.com --database testdb --user db_user@mydemoserver -p
Server flessibile mysql --host mydemoserver.mysql.database.azure.com --database testdb --user db_user -p

Limitare i privilegi per un utente

Per limitare il tipo di operazioni che un utente può eseguire nel database, è necessario aggiungere in modo esplicito le operazioni nell'istruzione GRANT . Vedere l'esempio seguente:

CREATE USER 'new_master_user'@'%' IDENTIFIED BY 'StrongPassword!';

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER ON *.* TO 'new_master_user'@'%' WITH GRANT OPTION;

FLUSH PRIVILEGES;

Informazioni su azure_superuser

Tutti i server Database di Azure per MySQL vengono creati con un utente denominato "azure_superuser". Microsoft ha creato un account di sistema per gestire il server per eseguire il monitoraggio, i backup e altre normali operazioni di manutenzione. I tecnici su chiamata possono anche usare questo account per accedere al server durante un evento imprevisto con l'autenticazione del certificato e devono richiedere l'accesso usando processi JIT (Just-In-Time).

Passaggi successivi