Tworzenie użytkowników w usłudze Azure Database for MySQL
DOTYCZY: Azure Database for MySQL — pojedynczy serwer usługi Azure Database for MySQL — serwer elastyczny
Ważne
Pojedynczy serwer usługi Azure Database for MySQL znajduje się na ścieżce wycofania. Zdecydowanie zalecamy uaktualnienie do serwera elastycznego usługi Azure Database for MySQL. Aby uzyskać więcej informacji na temat migracji do serwera elastycznego usługi Azure Database for MySQL, zobacz Co się dzieje z usługą Azure Database for MySQL — pojedynczy serwer?
W tym artykule opisano sposób tworzenia użytkowników dla usługi Azure Database for MySQL.
Uwaga
Ten artykuł odwołuje się do terminu podrzędnego, którego firma Microsoft już nie używa. Po usunięciu terminu z oprogramowania usuniemy go z tego artykułu.
Podczas tworzenia serwera usługi Azure Database for MySQL podano nazwę użytkownika i hasło administratora serwera. Aby uzyskać więcej informacji, zobacz ten przewodnik Szybki start. Nazwę użytkownika administratora serwera można określić w witrynie Azure Portal.
Administrator serwera ma następujące uprawnienia:
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
Po utworzeniu usługi Azure Database for the MySQL można użyć pierwszego konta administratora serwera, aby utworzyć więcej użytkowników i udzielić im dostępu administratora. Możesz również użyć konta administratora serwera, aby utworzyć mniej uprzywilejowanych użytkowników z dostępem do poszczególnych schematów bazy danych.
Uwaga
Rola ADMINISTRATORA i administratora bazy danych nie są obsługiwane. Zapoznaj się z uprawnieniami w artykule dotyczącym ograniczeń, aby dowiedzieć się, co nie jest obsługiwane w usłudze.
Wtyczki haseł, takie jak validate_password
i caching_sha2_password
nie są obsługiwane przez usługę.
Utwórz bazę danych
Uzyskaj informacje o połączeniu i nazwę użytkownika administratora.
Aby nawiązać połączenie z serwerem bazy danych, musisz mieć pełną nazwę serwera i poświadczenia logowania administratora. Nazwę serwera i informacje logowania można łatwo znaleźć na stronie Przegląd serwera lub Właściwości w witrynie Azure Portal.
Użyj konta administratora i hasła, aby nawiązać połączenie z serwerem bazy danych. Użyj preferowanego narzędzia klienckiego MySQL Workbench, mysql.exe lub HeidiSQL.
Uwaga
Jeśli nie masz pewności, jak nawiązać połączenie, zobacz Nawiązywanie połączenia i wykonywanie zapytań o dane dla pojedynczego serwera lub nawiązywanie połączeń i wykonywanie zapytań o dane dla serwera elastycznego.
Edytuj i uruchom następujący kod SQL. Zastąp wartość
db_user
symbolu zastępczego nazwą zamierzonego nowego użytkownika. Zastąp wartośćtestdb
symbolu zastępczego nazwą bazy danych.Ten kod SQL tworzy nową bazę danych o nazwie testdb. Następnie tworzy nowego użytkownika w usłudze MySQL i przyznaje temu użytkownikowi wszystkie uprawnienia do nowego schematu bazy danych (testdb.*).
CREATE DATABASE testdb;
Tworzenie użytkownika niebędącego administratorem
Po utworzeniu bazy danych możesz rozpocząć od utworzenia użytkownika niebędącego administratorem przy użyciu instrukcji CREATE USER
MySQL.
CREATE USER 'db_user'@'%' IDENTIFIED BY 'StrongPassword!';
GRANT ALL PRIVILEGES ON testdb . * TO 'db_user'@'%';
FLUSH PRIVILEGES;
Weryfikowanie uprawnień użytkownika
Aby wyświetlić uprawnienia dozwolone dla db_user użytkownika w bazie danych testdb, uruchom instrukcję SHOW GRANTS
MySQL.
USE testdb;
SHOW GRANTS FOR 'db_user'@'%';
Nawiązywanie połączenia z bazą danych przy użyciu nowego użytkownika
Zaloguj się do serwera, określając wyznaczoną bazę danych i używając nowej nazwy użytkownika i hasła. W tym przykładzie pokazano wiersz polecenia MySQL. Gdy używasz tego polecenia, zostanie wyświetlony monit o podanie hasła użytkownika. Użyj własnej nazwy serwera, nazwy bazy danych i nazwy użytkownika. Zobacz, jak połączyć pojedynczy serwer i elastyczny w poniższej tabeli.
Typ serwera | Użycie |
---|---|
Pojedynczy serwer | mysql --host mydemoserver.mysql.database.azure.com --database testdb --user db_user@mydemoserver -p |
Serwer elastyczny | mysql --host mydemoserver.mysql.database.azure.com --database testdb --user db_user -p |
Ograniczanie uprawnień użytkownika
Aby ograniczyć typ operacji, które użytkownik może uruchomić w bazie danych, należy jawnie dodać operacje w instrukcji GRANT . Zobacz poniższy przykład:
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;
Informacje o azure_superuser
Wszystkie serwery usługi Azure Database for MySQL są tworzone za pomocą użytkownika o nazwie "azure_superuser". Firma Microsoft utworzyła konto systemowe do zarządzania serwerem w celu przeprowadzania monitorowania, tworzenia kopii zapasowych i innych regularnych konserwacji. Inżynierowie połączeń mogą również używać tego konta do uzyskiwania dostępu do serwera podczas zdarzenia z uwierzytelnianiem certyfikatu i muszą zażądać dostępu przy użyciu procesów just in time (JIT).
Następne kroki
- Aby uzyskać więcej informacji na temat zarządzania kontami użytkowników, zobacz dokumentację produktu MySQL dotyczącą zarządzania kontami użytkowników, składni GRANT i uprawnień.