Краткое руководство. Создание сервера База данных Azure для MySQL с помощью PowerShell
ОБЛАСТЬ ПРИМЕНЕНИЯ: База данных Azure для MySQL — отдельный сервер
Внимание
База данных Azure для MySQL один сервер находится на пути выхода на пенсию. Настоятельно рекомендуется выполнить обновление до База данных Azure для MySQL гибкого сервера. Дополнительные сведения о миграции на гибкий сервер База данных Azure для MySQL см. в статье "Что происходит с одним сервером База данных Azure для MySQL?"
В этом кратком руководстве показано, как создать сервер Базы данных Azure для MySQL в группе ресурсов Azure с помощью Azure PowerShell. С помощью Azure PowerShell можно создавать и администрировать ресурсы Azure интерактивно или с помощью скриптов.
Необходимые компоненты
Если у вас нет подписки Azure, создайте бесплатную учетную запись, прежде чем приступить к работе.
Если вы решили использовать PowerShell локально, для работы с этой статьей установите модуль PowerShell Az и подключитесь к учетной записи Azure с помощью командлета Connect-AzAccount. См. сведения об установке модуля Azure PowerShell.
Внимание
Так как модуль PowerShell Az.MySql предоставляется в режиме предварительной версии, его нужно установить отдельно от модуля Az с помощью команды Install-Module -Name Az.MySql -AllowPrerelease
.
Как только модуль PowerShell Az.MySql станет общедоступным, он будет включен в один из будущих выпусков Az PowerShell и встроен в Azure Cloud Shell.
Если вы впервые используете Базу данных Azure для MySQL, зарегистрируйте поставщик ресурсов Microsoft.DBforMySQL.
Register-AzResourceProvider -ProviderNamespace Microsoft.DBforMySQL
Azure Cloud Shell
В Azure есть Azure Cloud Shell, интерактивная оболочка среды, с которой можно работать в браузере. Для работы со службами Azure можно использовать Bash или PowerShell с Cloud Shell. Для запуска кода из этой статьи можно использовать предварительно установленные команды Cloud Shell. Ничего дополнительного в локальной среде устанавливать не нужно.
Начало работы с Azure Cloud Shell
Вариант | Пример и ссылка |
---|---|
Нажмите кнопку Попробовать в правом верхнем углу блока кода или команд. При нажатии кнопки Попробовать код или команда не копируется в Cloud Shell автоматически. | |
Чтобы открыть Cloud Shell в браузере, перейдите по адресу https://shell.azure.com или нажмите кнопку Запуск Cloud Shell. | |
Нажмите кнопку Cloud Shell в строке меню в правом верхнем углу окна портала Azure. |
Чтобы использовать Azure Cloud Shell, выполните следующие действия:
Запустите Cloud Shell.
Нажмите кнопку Копировать в блоке кода (или блоке команд), чтобы скопировать код или команду.
Вставьте код или команду в окно сеанса Cloud Shell, нажав клавиши CTRL+SHIFT+V в Windows и Linux или CMD+SHIFT+V в macOS.
Нажмите клавишу ВВОД, чтобы запустить код или команду.
Если вы используете несколько подписок Azure, выберите ту, за ресурсы в которой будут выставляться счета. Выберите идентификатор требуемой подписки с помощью командлета Set-AzContext.
Set-AzContext -SubscriptionId 00000000-0000-0000-0000-000000000000
Создание или изменение группы ресурсов
Создайте группу ресурсов Azure с помощью командлета New-AzResourceGroup. Группа ресурсов — это логический контейнер, в котором ресурсы Azure развертываются и администрируются как группа.
В следующем примере создается группа ресурсов с именем myresourcegroup в регионе Западная часть США.
New-AzResourceGroup -Name myresourcegroup -Location westus
Создайте сервер базы данных Azure для MySQL.
Создайте сервер Базы данных Azure для MySQL с помощью командлета New-AzMySqlServer
. Сервер может управлять несколькими базами данных. Как правило, для каждого проекта и для каждого пользователя используется отдельная база данных.
В следующей таблице приводится список часто используемых параметров и примеры значений для командлета New-AzMySqlServer
.
Параметр | Пример значения | Description |
---|---|---|
Имя. | mydemoserver | Выберите глобально уникальное имя для сервера Базы данных Azure для MySQL. Имя сервера может содержать только буквы, цифры и дефис (-). Все символы в верхнем регистре при создании будут автоматически преобразованы в нижний регистр. Его длина должна составлять от 3 до 63 символов. |
ResourceGroupName | myresourcegroup | Укажите имя группы ресурсов Azure. |
Sku | GP_Gen5_2 | Имя номера SKU. В сокращенной записи соответствует схеме ценовая-категория_поколение-вычислительных-ресурсов_число-виртуальных-ядер. Под этой таблицей приведены дополнительные сведения о параметре SKU. |
BackupRetentionDay | 7 | Срок хранения резервной копии. Указывается в днях. Можно указать от 7 до 35 дней. |
GeoRedundantBackup | Включен | Позволяет включить или отключить создание геоизбыточных резервных копий для этого сервера. Это значение нельзя использовать для серверов ценовой категории "Базовый", а также изменять после создания сервера. Допустимые значения: Enabled, Disabled. |
Расположение | westus | Регион Azure для сервера. |
SslEnforcement | Включен | Позволяет включить или отключить SSL для этого сервера. Допустимые значения: Enabled, Disabled. |
StorageInMb | 51200 | Объем хранилища сервера (в мегабайтах). StorageInMb имеет минимальное значение 5120 МБ, которое увеличивается на 1024 МБ. См. сведения об ограничениях размера хранилища в описании ценовых категорий Базы данных Azure для MySQL. |
Версия | 5.7 | Основной номер версии MySQL. |
AdministratorUserName | myadmin | Имя для входа администратора. Не может иметь значение azure_superuser, admin, administrator, root, guest или public. |
AdministratorLoginPassword | <securestring> |
Пароль администратора в виде защищенной строки. Пароль должен содержать от 8 до 128 символов. Пароль должен содержать знаки трех из следующих категорий: прописные латинские буквы, строчные латинские буквы, цифры и другие знаки. |
Значение параметра Sku соответствует формату ценовая-категория_поколение-вычислительных-ресурсов_количество-виртуальных-ядер, как показано в примерах ниже.
-Sku B_Gen5_1
— "Базовый", поколение 5, 1 виртуальное ядро; Это номер SKU наименьший по размеру из доступных.-Sku GP_Gen5_32
— "Общего назначения", поколение 5, 32 виртуальных ядра;-Sku MO_Gen5_2
— "оптимизированный для операций в памяти", поколение 5, 2 виртуальных ядра.
См. сведения о допустимых значениях SKU по регионам и ценовым категориям в описании ценовых категорий Базы данных Azure для MySQL.
В следующем примере в регионе Западная часть США создается сервер MySQL с именем mydemoserver в группе ресурсов myresourcegroup с администратором сервера с именем myadmin. Это сервер 5-го поколения ценовой категории "Общего назначения" с двумя виртуальными ядрами и геоизбыточным резервным копированием. Запишите пароль, указанный в первой строке примера, так как это пароль для учетной записи администратора сервера MySQL.
Совет
Имя сервера сопоставляется с DNS-именем и должно быть глобально уникальным в Azure.
$Password = Read-Host -Prompt 'Please enter your password' -AsSecureString
New-AzMySqlServer -Name mydemoserver -ResourceGroupName myresourcegroup -Sku GP_Gen5_2 -GeoRedundantBackup Enabled -Location westus -AdministratorUsername myadmin -AdministratorLoginPassword $Password
Используйте ценовую категорию "Базовый", если для вашей рабочей нагрузки не требуется большое количество вычислительных ресурсов и операций ввода-вывода.
Внимание
Серверы, созданные в ценовой категории "Базовый", не удастся позже масштабировать до ценовых категорий "Общего назначения" или "Оптимизировано для памяти" и к ним нельзя применить георепликацию.
Настройка правила брандмауэра
Создайте правило брандмауэра для сервера Базы данных Azure для MySQL, используя командлет New-AzMySqlFirewallRule
. Правило брандмауэра на уровне сервера позволяет внешним приложениям, таким как средство командной строки mysql
или MySQL Workbench, подключаться к серверу через брандмауэр Базы данных Azure для MySQL.
В приведенном ниже примере создается правило брандмауэра с именем AllowMyIP, которое разрешает подключения с определенного IP-адреса (192.168.0.1). Замените его IP-адресом или диапазоном IP-адресов, которые применяются для того расположения, из которого вы подключаетесь.
New-AzMySqlFirewallRule -Name AllowMyIP -ResourceGroupName myresourcegroup -ServerName mydemoserver -StartIPAddress 192.168.0.1 -EndIPAddress 192.168.0.1
Примечание.
Подключитесь к базе данных Azure для MySQL через порт 3306. Если вы пытаетесь подключиться из корпоративной сети, исходящий трафик через порт 3306 может быть запрещен. В этом сценарии вы сможете подключиться к серверу, только если ИТ-отдел откроет для вас порт 3306.
Настройка параметров SSL
По умолчанию между сервером и клиентскими приложениями применяется SSL-соединение. Это обеспечивает защиту данных при перемещении за счет шифрования потока данных через Интернет. В этом руководстве отключите SSL-соединения для вашего сервера. Дополнительные сведения см. в статье Настройка SSL-подключений в приложении для безопасного подключения к базе данных Azure для MySQL.
Предупреждение
Мы не рекомендуем так делать для рабочих серверов.
Следующий пример отключает SSL на сервере Базы данных Azure для MySQL.
Update-AzMySqlServer -Name mydemoserver -ResourceGroupName myresourcegroup -SslEnforcement Disabled
Получение сведений о подключении
Чтобы подключиться к серверу, необходимо указать сведения об узле и учетные данные для доступа. Чтобы получить сведения о подключении, используйте следующий пример. Запишите значения FullyQualifiedDomainName и AdministratorLogin.
Get-AzMySqlServer -Name mydemoserver -ResourceGroupName myresourcegroup |
Select-Object -Property FullyQualifiedDomainName, AdministratorLogin
FullyQualifiedDomainName AdministratorLogin
------------------------ ------------------
mydemoserver.mysql.database.azure.com myadmin
Подключение к серверу с помощью средства командной строки mysql
Подключитесь к серверу с помощью средства командной строки mysql
. Скачать его можно здесь. Вы можете также получить доступ к предустановленной версии средства командной строки mysql
из Azure Cloud Shell, нажав кнопку Попробовать в примере кода в этой статье. Azure Cloud Shell также можно открыть, нажав кнопку >_ на панели инструментов вверху справа на портале Azure или перейдя по адресу shell.azure.com.
Подключитесь к серверу с помощью средства командной строки
mysql
.mysql -h mydemoserver.mysql.database.azure.com -u myadmin@mydemoserver -p
Просмотрите состояние сервера.
mysql> status
C:\Users\>mysql -h mydemoserver.mysql.database.azure.com -u myadmin@mydemoserver -p Enter password: ************* Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 65512 Server version: 5.6.42.0 MySQL Community Server (GPL) Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> status -------------- mysql Ver 14.14 Distrib 5.7.29, for Win64 (x86_64) Connection id: 65512 Current database: Current user: myadmin@myipaddress SSL: Not in use Using delimiter: ; Server version: 5.6.42.0 MySQL Community Server (GPL) Protocol version: 10 Connection: mydemoserver.mysql.database.azure.com via TCP/IP Server characterset: latin1 Db characterset: latin1 Client characterset: utf8 Conn. characterset: utf8 TCP port: 3306 Uptime: 1 hour 2 min 12 sec Threads: 7 Questions: 952 Slow queries: 0 Opens: 66 Flush tables: 3 Open tables: 16 Queries per second avg: 0.255 -------------- mysql>
Дополнительные команды см. в разделе 4.5.1 справочного руководства по MySQL 5.7.
Подключение к серверу с помощью MySQL Workbench
Запустите приложение MySQL Workbench на клиентском компьютере. Скачать MySQL Workbench для установки вы можете отсюда.
В диалоговом окне Настройка нового подключения на вкладке Параметры введите следующие сведения:
Параметр Рекомендуемое значение Description Имя подключения Мое подключение Определение метки для этого подключения Способ подключения Стандартный способ (по протоколу TCP/IP) Применение протокола TCP/IP для подключения к Базе данных Azure для MySQL Hostname (Имя узла) mydemoserver.mysql.database.azure.com
Имя сервера, которое вы записали ранее Порт 3306 Порт MySQL по умолчанию Username myadmin@mydemoserver Имя для входа администратора сервера, которое вы записали ранее Пароль ************* Используйте пароль учетной записи администратора, настроенный ранее Щелкните Проверить подключение, чтобы проверить, все ли параметры настроены правильно.
Выберите подключение для соединения с сервером.
Очистка ресурсов
Если созданные в этом кратком руководстве ресурсы не нужны вам для другого руководства, их можно удалить с помощью команды из следующего примера.
Внимание
Следующий пример удаляет указанную группу ресурсов и все содержащиеся в ней ресурсы. Если в указанной группе ресурсов существуют другие ресурсы, кроме созданных для этого краткого руководства, они также будут удалены.
Remove-AzResourceGroup -Name myresourcegroup
Чтобы удалить только тот сервер, который вы создали с помощью этого краткого руководства, но сохранить группу ресурсов, используйте командлет Remove-AzMySqlServer
.
Remove-AzMySqlServer -Name mydemoserver -ResourceGroupName myresourcegroup