通过


你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Microsoft.DBforPostgreSQL 服务器/数据库

Bicep 资源定义

可以使用目标作部署服务器/数据库资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.DBforPostgreSQL/servers/databases 资源,请将以下 Bicep 添加到模板。

resource symbolicname 'Microsoft.DBforPostgreSQL/servers/databases@2017-12-01' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    charset: 'string'
    collation: 'string'
  }
}

属性值

Microsoft.DBforPostgreSQL/servers/databases

名字 描述 价值
名字 资源名称 string (必需)
父级 在 Bicep 中,可以为子资源指定父资源。 仅当子资源在父资源外部声明时,才需要添加此属性。

有关详细信息,请参阅 父资源外部的子资源
类型资源的符号名称:服务器
性能 数据库的属性。 数据库属性

数据库属性

名字 描述 价值
字符集 数据库的字符集。 字符串
排序规则 数据库的排序规则。 字符串

用法示例

Bicep 示例

在 PostgreSQL Server 中部署 PostgreSQL 数据库的基本示例。

param resourceName string = 'acctest0001'
param location string = 'westeurope'
@description('The administrator login for the PostgreSQL server')
param administratorLogin string
@secure()
@description('The administrator login password for the PostgreSQL server')
param administratorLoginPassword string

resource server 'Microsoft.DBforPostgreSQL/servers@2017-12-01' = {
  name: resourceName
  location: location
  properties: {
    administratorLogin: null
    administratorLoginPassword: null
    createMode: 'Default'
    infrastructureEncryption: 'Disabled'
    minimalTlsVersion: 'TLS1_2'
    publicNetworkAccess: 'Enabled'
    sslEnforcement: 'Enabled'
    storageProfile: {
      backupRetentionDays: 7
      storageAutogrow: 'Enabled'
      storageMB: 51200
    }
    version: '9.6'
  }
  sku: {
    capacity: 2
    family: 'Gen5'
    name: 'GP_Gen5_2'
    tier: 'GeneralPurpose'
  }
}

resource database 'Microsoft.DBforPostgreSQL/servers/databases@2017-12-01' = {
  parent: server
  name: resourceName
  properties: {
    charset: 'UTF8'
    collation: 'English_United States.1252'
  }
}

Azure 快速入门示例

以下 Azure 快速入门模板 包含用于部署此资源类型的 Bicep 示例。

Bicep 文件 描述
在 Linux 上使用 PostgreSQL Sonarqube Docker Web 应用 此模板提供了使用 Azure Database for PostgreSQL 在 Linux Web 应用上部署 Sonarqube docker 映像(alpine tag)的简单方法(预览版)

ARM 模板资源定义

可以使用目标作部署服务器/数据库资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.DBforPostgreSQL/servers/databases 资源,请将以下 JSON 添加到模板。

{
  "type": "Microsoft.DBforPostgreSQL/servers/databases",
  "apiVersion": "2017-12-01",
  "name": "string",
  "properties": {
    "charset": "string",
    "collation": "string"
  }
}

属性值

Microsoft.DBforPostgreSQL/servers/databases

名字 描述 价值
apiVersion API 版本 '2017-12-01'
名字 资源名称 string (必需)
性能 数据库的属性。 数据库属性
类型 资源类型 “Microsoft.DBforPostgreSQL/servers/databases”

数据库属性

名字 描述 价值
字符集 数据库的字符集。 字符串
排序规则 数据库的排序规则。 字符串

用法示例

Azure 快速入门模板

以下 Azure 快速入门模板 部署此资源类型。

模板 描述
在 Linux 上使用 PostgreSQL Sonarqube Docker Web 应用

部署到 Azure
此模板提供了使用 Azure Database for PostgreSQL 在 Linux Web 应用上部署 Sonarqube docker 映像(alpine tag)的简单方法(预览版)

Terraform (AzAPI 提供程序)资源定义

可以使用目标作部署服务器/数据库资源类型:

  • 资源组

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.DBforPostgreSQL/servers/databases 资源,请将以下 Terraform 添加到模板。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DBforPostgreSQL/servers/databases@2017-12-01"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      charset = "string"
      collation = "string"
    }
  }
}

属性值

Microsoft.DBforPostgreSQL/servers/databases

名字 描述 价值
名字 资源名称 string (必需)
parent_id 此资源的父资源的 ID。 类型资源的 ID:服务器
性能 数据库的属性。 数据库属性
类型 资源类型 “Microsoft.DBforPostgreSQL/servers/databases@2017-12-01”

数据库属性

名字 描述 价值
字符集 数据库的字符集。 字符串
排序规则 数据库的排序规则。 字符串

用法示例

Terraform 示例

在 PostgreSQL Server 中部署 PostgreSQL 数据库的基本示例。

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

variable "administrator_login" {
  type        = string
  description = "The administrator login for the PostgreSQL server"
}

variable "administrator_login_password" {
  type        = string
  description = "The administrator login password for the PostgreSQL server"
  sensitive   = true
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "server" {
  type      = "Microsoft.DBforPostgreSQL/servers@2017-12-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      administratorLogin         = var.administrator_login
      administratorLoginPassword = var.administrator_login_password
      createMode                 = "Default"
      infrastructureEncryption   = "Disabled"
      minimalTlsVersion          = "TLS1_2"
      publicNetworkAccess        = "Enabled"
      sslEnforcement             = "Enabled"
      storageProfile = {
        backupRetentionDays = 7
        storageAutogrow     = "Enabled"
        storageMB           = 51200
      }
      version = "9.6"
    }
    sku = {
      capacity = 2
      family   = "Gen5"
      name     = "GP_Gen5_2"
      tier     = "GeneralPurpose"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "database" {
  type      = "Microsoft.DBforPostgreSQL/servers/databases@2017-12-01"
  parent_id = azapi_resource.server.id
  name      = var.resource_name
  body = {
    properties = {
      charset   = "UTF8"
      collation = "English_United States.1252"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}