快速入門:使用 Azure CLI 建立 適用於 PostgreSQL 的 Azure 資料庫 - 彈性伺服器實例

適用範圍:適用於 PostgreSQL 的 Azure 資料庫 - 彈性伺服器

本快速入門說明如何使用 Azure Cloud Shell 中的 Azure CLI 命令,在五分鐘內建立 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器實例。 如果您沒有 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 帳戶的訂用帳戶標識碼

az login

使用 az account set 命令來選取您帳戶底下的特定訂用帳戶。 使用 az login 輸出中的標識符值,作為命令中的 subscription 自變數值。 如果您有多個訂用帳戶,請選擇資源計費的適當訂用帳戶。 若要取得您的所有訂用帳戶,請使用 az account list

az account set --subscription <subscription id>

建立彈性伺服器

使用 az group create 命令建立 Azure 資源群組,然後在此資源群組內建立 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器實例。 您應該提供唯一的名稱。 下列範例會在 eastus 位置建立名為 myresourcegroup 的資源群組。

az group create --name myresourcegroup --location eastus

使用 az postgres flexible-server create 命令建立 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器實例。 伺服器可以包含多個資料庫。 下列命令會在您剛才建立的資源群組中建立伺服器:

az postgres flexible-server create --name mydemoserver --resource-group myresourcegroup

由於預設連線方法是 公用存取(允許的IP位址),因此命令會提示您確認您是否要新增IP位址,以及/或所有IP(範圍涵蓋0.0.0.0.0.0到255.255.255.255.255) 到允許的位址清單。

建立的伺服器具有下列屬性:

  • 與資源群組相同的位置
  • 自動產生的系統管理員使用者名稱和系統管理員密碼(您應該將它儲存在安全的地方 )
  • 名為 「flexibleserverdb」 的預設資料庫
  • 其餘伺服器組態的服務預設值:計算層(一般用途)、計算大小/SKU(Standard_D2s_v3 - 2 個虛擬核心、8 GB RAM)、備份保留期間(7 天),以及 PostgreSQL 版本 (13)

注意

建立伺服器之後,無法變更連線方法。 例如,如果您在建立期間選取 [私人存取] [VNet 整合],則無法在建立后將其變更為 [公用存取] (允許的IP 位址)。 強烈建議建立具有私人存取權的伺服器,以使用 VNet 整合安全地存取您的伺服器。 在概念文章深入瞭解私人存取。

如果您想要變更任何預設值,請參閱 az postgres flexible-server createAzure CLI 參考。

注意

連線 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器透過埠 5432 進行通訊。 如果您嘗試從公司網路內連線,則不允許透過埠 5432 的輸出流量。 如果是這種情況,除非 IT 部門開啟埠 5432,否則您無法連線到您的伺服器。 請注意,如果您在 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器的實例上啟用 PgBouncer,而且想要透過它進行連線,因為它會在埠 6432 上執行,IT 部門必須針對輸出流量開啟該埠。

取得連線資訊

若要連線到您的伺服器,您必須提供主機資訊和存取認證。

az postgres flexible-server show --name mydemoserver --resource-group myresourcegroup

結果為 JSON 格式。 記下 fullyQualifiedDomainNameadministratorLogin。 您應該已在上一個步驟中儲存密碼。

{
  "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

下一步