你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
快速入门:使用 Azure CLI 创建 Azure Database for PostgreSQL 灵活服务器实例
适用于: Azure Database for PostgreSQL 灵活服务器
本快速入门介绍如何使用 Azure Cloud Shell 中的 Azure CLI 命令在 5 分钟内创建 Azure Database for PostgreSQL 灵活服务器实例。 如果没有 Azure 订阅,请在开始之前创建一个免费帐户。
启动 Azure Cloud Shell
Azure Cloud Shell 是免费的交互式 shell,可以使用它运行本文中的步骤。 它预安装有常用 Azure 工具并将其配置与帐户一起使用。
若要打开 Cloud Shell,只需要从代码块的右上角选择“试一试”。 也可以在单独的浏览器标签页中通过转到 https://shell.azure.com/bash 打开 Cloud Shell。 选择“复制”以复制代码块,将其粘贴到 Cloud Shell 中,然后选择 Enter 来运行它。
如果希望在本地安装并使用 CLI,则本快速入门需要 Azure CLI 2.0 版或更高版本。 运行 az --version
即可查找版本。 如果需要进行安装或升级,请参阅安装 Azure CLI。
先决条件
你将需要使用 az login 命令登录到你的帐户。 请注意输出中的 id 属性,它指的是 Azure 帐户的订阅 ID。
az login
使用 az account set 命令选择帐户下的特定订阅。 将 az login 输出中的 id 值用作命令中 subscription 参数的值。 如果有多个订阅,请选择应计费的资源所在的相应订阅。 若要获取所有订阅,请使用 az account list。
az account set --subscription <subscription id>
创建灵活服务器
使用 az group create
命令创建 Azure 资源组,然后在此资源组中创建 Azure Database for PostgreSQL 灵活服务器实例。 应提供唯一名称。 以下示例在 eastus
位置创建名为 myresourcegroup
的资源组。
az group create --name myresourcegroup --location eastus
使用 az postgres flexible-server create
命令创建 Azure Database for PostgreSQL 灵活服务器实例。 一个服务器可以包含多个数据库。 以下命令在刚刚创建的资源组中创建一个服务器:
az postgres flexible-server create --name mydemoserver --resource-group myresourcegroup
由于默认连接方法为公共访问(允许的 IP 地址),该命令将提示你确认是否要添加你的 IP 地址和/或所有 IP 地址(范围从 0.0.0.0 到 255.255.255.255)到允许地址列表中。
创建的服务器具有以下属性:
- 资源组所在的同一位置
- 自动生成的管理员用户名和管理员密码(应保存在安全位置)
- 一个名为“flexibleserverdb”的默认数据库
- 其余服务器配置的服务默认值:计算层(常规用途)、计算大小/SKU(
Standard_D2s_v3
- 2 个 vCore、8 GB RAM)、备份保留期(7 天)和 PostgreSQL 版本 (13)
注意
创建服务器后,无法更改连接方法。 例如,如果在创建过程中选择了“专用访问(VNet 集成)”,则在创建后无法将其更改为“公共访问(允许的 IP 地址)”。 强烈建议创建采用专用访问的服务器,以使用 VNet 集成安全地访问你的服务器。 若要详细了解专用访问,请参阅概念文章。
如果你想要更改任何默认值,请参阅 az postgres flexible-server create 的 Azure CLI 参考。
注意
与 Azure Database for PostgreSQL 灵活服务器的连接会通过端口 5432 进行通信。 如果尝试从企业网络内部进行连接,则可能不允许经端口 5432 的出站流量。 如果是这样,则无法连接到服务器,除非 IT 部门打开了端口 5432。 请注意,如果在 Azure Database for PostgreSQL 灵活服务器的实例上启用 PgBouncer,并且想要通过它进行连接,由于它在端口 6432 上运行,IT 部门必须为出站流量打开该端口。
获取连接信息
若要连接到服务器,需要提供主机信息和访问凭据。
az postgres flexible-server show --name mydemoserver --resource-group myresourcegroup
结果采用 JSON 格式。 记下 fullyQualifiedDomainName 和 administratorLogin 。 在上一步骤中应已保存密码。
{
"administratorLogin": "myadmin",
"availabilityZone": "3",
"backup": {
"backupRetentionDays": 7,
"earliestRestoreDate": "2022-10-20T18:03:50.989428+00:00",
"geoRedundantBackup": "Disabled"
},
"earliestRestoreDate": null,
"fullyQualifiedDomainName": "mydemoserver.postgres.database.azure.com",
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.DBforPostgreSQL/flexibleServers/mydemoserver",
"location": "eastus",
"name": "mydemoserver",
"network": {
"delegatedSubnetResourceId": null,
"privateDnsZoneArmResourceId": null,
"publicNetworkAccess": "Enabled"
},
"resourceGroup": "myresourcegroup",
"sku": {
"name": "Standard_D2s_v3",
"tier": "GeneralPurpose"
},
"state": "Ready",
"storage": {
"storageSizeGb": 128
},
"tags": null,
"type": "Microsoft.DBforPostgreSQL/flexibleServers",
"version": "13"
}
使用 PostgreSQL 命令行客户端进行连接
首先安装 psql 命令行工具。
使用 psql,通过以下命令连接到“flexibleserverdb”数据库。 将值替换为自动生成的域名和用户名。
psql -h mydemoserver.postgres.database.azure.com -U myadmin flexibleserverdb
注意
如果收到错误“The parameter PrivateDnsZoneArguments is required, and must be provided by customer
”,则意味着你可能正在运行旧版本的 Azure CLI。 请升级 Azure CLI 并重试操作。
清理资源
如果不需要将这些资源用于其他快速入门/教程,则可通过执行以下命令将其删除:
az group delete --name myresourcegroup
如果你只想删除新建的服务器,可以运行 az postgres flexible-server delete
命令。
az postgres flexible-server delete --resource-group myresourcegroup --name mydemoserver