- Latest
- 2025-02-01-preview
- 2025-01-01
- 2024-11-01-preview
- 2024-05-01-preview
- 2023-08-01
- 2023-08-01-preview
- 2023-05-01-preview
- 2023-02-01-preview
- 2022-11-01-preview
- 2022-08-01-preview
- 2022-05-01-preview
- 2022-02-01-preview
- 2021-11-01
- 2021-11-01-preview
- 2021-08-01-preview
- 2021-05-01-preview
- 2021-02-01-preview
- 2020-11-01-preview
- 2020-08-01-preview
- 2020-02-02-preview
- 2019-06-01-preview
- 2017-10-01-preview
- 2017-03-01-preview
- 2014-04-01
Bicepリソースの定義
サーバー/データベースのリソースの種類は、次を対象とする操作でデプロイできます。
- リソース グループの - リソース グループのデプロイ コマンド 参照
各 API バージョンで変更されたプロパティの一覧については、変更ログの
リソースの形式
Microsoftを作るために。Sql/servers/databases リソースで、テンプレートに以下のBicepを追加してください。
resource symbolicname 'Microsoft.Sql/servers/databases@2017-10-01-preview' = {
parent: resourceSymbolicName
location: 'string'
name: 'string'
properties: {
autoPauseDelay: int
catalogCollation: 'string'
collation: 'string'
createMode: 'string'
elasticPoolId: 'string'
licenseType: 'string'
longTermRetentionBackupResourceId: 'string'
maxSizeBytes: int
minCapacity: int
readReplicaCount: int
readScale: 'string'
recoverableDatabaseId: 'string'
recoveryServicesRecoveryPointId: 'string'
restorableDroppedDatabaseId: 'string'
restorePointInTime: 'string'
sampleName: 'string'
sourceDatabaseDeletionDate: 'string'
sourceDatabaseId: 'string'
zoneRedundant: bool
}
sku: {
capacity: int
family: 'string'
name: 'string'
size: 'string'
tier: 'string'
}
tags: {
{customized property}: 'string'
}
}
プロパティ値
Microsoft。SQL/サーバー/データベース
| Name | Description | Value |
|---|---|---|
| 位置 | リソースの場所。 | string (必須) |
| name | リソース名 | string (必須) |
| 親 | Bicepでは、子リソースの親リソースを指定することができます。 このプロパティを追加する必要があるのは、子リソースが親リソースの外部で宣言されている場合のみです。 詳細については、「親リソースの外部 |
リソースの象徴名:サーバー |
| properties | リソースのプロパティ。 | DatabaseProperties |
| sku | データベース SKU。 SKU の一覧は、リージョンとサポート プランによって異なる場合があります。 Azureリージョンでサブスクリプションで利用可能なSKU(SKU名、ティア/エディション、ファミリー、容量を含む)を特定するには、 Capabilities_ListByLocation REST APIまたは以下のいずれかのコマンドを使用します。azurecli<br />az sql db list-editions -l <location> -o table<br />````<br /><br />パワーシェルGet-AzSqlServerServiceObjective -Location < location> ```` |
Sku |
| tags | リソース タグ | タグ名と値のディクショナリ。 テンプレート の |
DatabaseProperties
| Name | Description | Value |
|---|---|---|
| autoPauseDelay | データベースが自動的に一時停止されるまでの時間 (分)。 -1 の値は、自動一時停止が無効になっていることを意味します | int |
| catalogCollation | メタデータ カタログの照合順序。 | 'DATABASE_DEFAULT' 'SQL_Latin1_General_CP1_CI_AS' |
| 照合順序 | データベースの照合順序。 | 文字列 |
| createMode | データベースの作成モードを指定します。 既定値: 通常のデータベース作成。 コピー: 既存のデータベースのコピーとしてデータベースを作成します。 sourceDatabaseId は、ソース データベースのリソース ID として指定する必要があります。 セカンダリ: 既存のデータベースのセカンダリ レプリカとしてデータベースを作成します。 sourceDatabaseId は、既存のプライマリ データベースのリソース ID として指定する必要があります。 PointInTimeRestore: 既存のデータベースの特定の時点のバックアップを復元してデータベースを作成します。 sourceDatabaseId を既存のデータベースのリソース ID として指定し、restorePointInTime を指定する必要があります。 復旧: geo レプリケートされたバックアップを復元してデータベースを作成します。 sourceDatabaseId は、復元する回復可能なデータベース リソース ID として指定する必要があります。 復元: 削除されたデータベースのバックアップを復元してデータベースを作成します。 sourceDatabaseId を指定する必要があります。 sourceDatabaseId がデータベースの元のリソース ID である場合は、sourceDatabaseDeletionDate を指定する必要があります。 それ以外の場合、sourceDatabaseId は復元可能な破棄されたデータベース リソース ID である必要があり、sourceDatabaseDeletionDate は無視されます。 restorePointInTime は、以前の時点から復元するように指定することもできます。 RestoreLongTermRetentionBackup: 長期保持コンテナーから復元することでデータベースを作成します。 recoveryServicesRecoveryPointResourceId は、復旧ポイントのリソース ID として指定する必要があります。 DataWarehouse エディションでは、コピー、セカンダリ、RestoreLongTermRetentionBackup はサポートされていません。 |
'Copy' 'Default' 'OnlineSecondary' 'PointInTimeRestore' 'Recovery' 'Restore' 'RestoreExternalBackup' 'RestoreExternalBackupSecondary' 'RestoreLongTermRetentionBackup' 'Secondary' |
| elasticPoolId | このデータベースを含むエラスティック プールのリソース識別子。 | 文字列 |
| licenseType | このデータベースに適用するライセンスの種類。 免許が必要な場合はLicenseIncluded、免許を持っていてこのAzure ハイブリッド特典の資格がある場合はBasePriceです。 |
'BasePrice' 'LicenseIncluded' |
| longTermRetentionBackupResourceId | このデータベースの作成操作に関連付けられている長期保有バックアップのリソース識別子。 | 文字列 |
| maxSizeBytes | バイト単位で表されるデータベースの最大サイズ。 | int |
| minCapacity | 一時停止されていない場合、データベースが常に割り当てる最小限の容量 | int |
| readReplicaCount | 読み取りonly アプリケーションインテント接続のルーティング先となるデータベースに関連付けられている読み取りオンセカンダリ レプリカの数。 このプロパティは、Hyperscale Edition データベースに対してのみ設定できます。 | int |
| readScale | 有効化されている場合、接続文字列でアプリケーション意図が読み取り専用に設定されている接続は、読み取り専用の二次レプリカにルーティングされることがあります。 このプロパティは、Premium および Business Critical データベースでのみ設定できます。 | 'Disabled' 'Enabled' |
| recoverableDatabaseId | このデータベースの作成操作に関連付けられている回復可能なデータベースのリソース識別子。 | 文字列 |
| recoveryServicesRecoveryPointId | このデータベースの作成操作に関連付けられている復旧ポイントのリソース識別子。 | 文字列 |
| restorableDroppedDatabaseId | このデータベースの作成操作に関連付けられている、復元可能な削除されたデータベースのリソース識別子。 | 文字列 |
| restorePointInTime | 新しいデータベースを作成するために復元されるソース データベースの時点 (ISO8601形式) を指定します。 | 文字列 |
| sampleName | このデータベースの作成時に適用するサンプル スキーマの名前。 | 'AdventureWorksLT' 'WideWorldImportersFull' 'WideWorldImportersStd' |
| sourceDatabaseDeletionDate | データベースが削除された時刻を指定します。 | 文字列 |
| sourceDatabaseId | このデータベースの作成操作に関連付けられているソース データベースのリソース識別子。 | 文字列 |
| zoneRedundant | このデータベースがゾーン冗長かどうか。つまり、このデータベースのレプリカは複数の可用性ゾーンに分散されます。 | bool |
Sku
| Name | Description | Value |
|---|---|---|
| キャパシティ | 特定の SKU の容量。 | int |
| family | 同じ SKU に対して、サービスの世代が異なるハードウェアがある場合は、ここでキャプチャできます。 | 文字列 |
| name | SKU の名前 。通常は、文字 + 番号コード (P3 など)。 | string (必須) |
| size | 特定の SKU のサイズ | 文字列 |
| レベル | 特定の SKU のレベルまたはエディション (Basic、Premium など)。 | 文字列 |
TrackedResourceTags
| Name | Description | Value |
|---|
使用例
Bicep サンプル
MS SQL Database のデプロイの基本的な例。
param resourceName string = 'acctest0001'
param location string = 'westeurope'
@secure()
@description('The administrator login password for the SQL server')
param administratorLoginPassword string
resource server 'Microsoft.Sql/servers@2021-02-01-preview' = {
name: resourceName
location: location
properties: {
administratorLogin: 'mradministrator'
administratorLoginPassword: null
minimalTlsVersion: '1.2'
publicNetworkAccess: 'Enabled'
restrictOutboundNetworkAccess: 'Disabled'
version: '12.0'
}
}
resource database 'Microsoft.Sql/servers/databases@2021-02-01-preview' = {
parent: server
name: resourceName
location: location
properties: {
autoPauseDelay: 0
createMode: 'Default'
elasticPoolId: ''
highAvailabilityReplicaCount: 0
isLedgerOn: false
licenseType: 'LicenseIncluded'
maintenanceConfigurationId: resourceId('Microsoft.Maintenance/publicMaintenanceConfigurations', 'SQL_Default')
minCapacity: 0
readScale: 'Disabled'
requestedBackupStorageRedundancy: 'Geo'
zoneRedundant: false
}
}
Azure Verified Modules
以下のAzure検証済みモジュールはこのリソースタイプの展開に使用できます。
| モジュール | Description |
|---|---|
| Azure SQL Database | AVM Resource Module for Azure SQL Database |
Azure Quickstart Samples
以下の Azure クイックスタートテンプレートには、このリソースタイプのデプロイのためのBicepサンプルが含まれています。
| Bicepファイル | Description |
|---|---|
| このテンプレートを使えば、監査を有効にしたAzure SQLサーバーを展開し、Log Analytics(OMSワークスペース)に監査ログを書き込むことができます | |
| SQL Serverとデータベースを作成 | このテンプレートを使用すると、SQL Database とサーバーを作成できます。 |
| Dedicated SQL pool with Transparent Encryption | SQL Serverと専用SQLプール(旧SQL DW)を作成し、Transparent Data Encryptionを使用します。 |
| ADLS Gen 2を有効にしたAzureストレージアカウント、ストレージアカウント用のリンクサービスを持つAzure Data Factoryインスタンス(展開されている場合はAzure SQL Database)、そしてAzure Databricksインスタンスを作成します。 テンプレートをデプロイするユーザーの AAD ID と ADF インスタンスのマネージド ID には、ストレージ アカウントのストレージ BLOB データ共同作成者ロールが付与されます。 また、Azure Key Vaultインスタンス、Azure SQL Database、ストリーミング利用のためのAzure Event Hubを展開するオプションもあります。 Azure Key Vaultが展開されると、テンプレートをデプロイするユーザーのData Factory管理IDとAADアイデンティティにKey Vault Secretsユーザーロールが付与されます。 | |
| プライベートエンドポイントの例 | このテンプレートはAzure SQL Serverを指すプライベートエンドポイントの作成方法を示しています |
| このテンプレートは、Web アプリ、SQL Database、自動スケール設定、アラート ルール、App Insights をプロビジョニングします。 ウェブアプリ内でデータベース用の接続文字列を設定します。 | |
| Sonarqube Docker Web App on Linux with Azure SQL | このテンプレートは、公式のSonarqubeイメージを使用し、Azure SQL ServerによってバックアップされたAzure App ServiceのWebアプリLinuxコンテナにSonarqubeをデプロイします。 |
| <マネージド・アイデンティティ、SQL Server、ΑΙWebアプリ> | Azure インフラストラクチャを app + data + managed identity + monitoring にデプロイするための簡単な例 |
ARM テンプレート リソース定義
サーバー/データベースのリソースの種類は、次を対象とする操作でデプロイできます。
- リソース グループの - リソース グループのデプロイ コマンド 参照
各 API バージョンで変更されたプロパティの一覧については、変更ログの
リソースの形式
Microsoftを作るために。SQL/servers/databasesリソース、テンプレートに以下のJSONを追加してください。
{
"type": "Microsoft.Sql/servers/databases",
"apiVersion": "2017-10-01-preview",
"name": "string",
"location": "string",
"properties": {
"autoPauseDelay": "int",
"catalogCollation": "string",
"collation": "string",
"createMode": "string",
"elasticPoolId": "string",
"licenseType": "string",
"longTermRetentionBackupResourceId": "string",
"maxSizeBytes": "int",
"minCapacity": "int",
"readReplicaCount": "int",
"readScale": "string",
"recoverableDatabaseId": "string",
"recoveryServicesRecoveryPointId": "string",
"restorableDroppedDatabaseId": "string",
"restorePointInTime": "string",
"sampleName": "string",
"sourceDatabaseDeletionDate": "string",
"sourceDatabaseId": "string",
"zoneRedundant": "bool"
},
"sku": {
"capacity": "int",
"family": "string",
"name": "string",
"size": "string",
"tier": "string"
},
"tags": {
"{customized property}": "string"
}
}
プロパティ値
Microsoft。SQL/サーバー/データベース
| Name | Description | Value |
|---|---|---|
| apiVersion | API のバージョン | '2017-10-01-preview' |
| 位置 | リソースの場所。 | string (必須) |
| name | リソース名 | string (必須) |
| properties | リソースのプロパティ。 | DatabaseProperties |
| sku | データベース SKU。 SKU の一覧は、リージョンとサポート プランによって異なる場合があります。 Azureリージョンでサブスクリプションで利用可能なSKU(SKU名、ティア/エディション、ファミリー、容量を含む)を特定するには、 Capabilities_ListByLocation REST APIまたは以下のいずれかのコマンドを使用します。azurecli<br />az sql db list-editions -l <location> -o table<br />````<br /><br />パワーシェルGet-AzSqlServerServiceObjective -Location < location> ```` |
Sku |
| tags | リソース タグ | タグ名と値のディクショナリ。 テンプレート の |
| 型 | リソースの種類 | 「Microsoft。SQL/サーバー/データベース |
DatabaseProperties
| Name | Description | Value |
|---|---|---|
| autoPauseDelay | データベースが自動的に一時停止されるまでの時間 (分)。 -1 の値は、自動一時停止が無効になっていることを意味します | int |
| catalogCollation | メタデータ カタログの照合順序。 | 'DATABASE_DEFAULT' 'SQL_Latin1_General_CP1_CI_AS' |
| 照合順序 | データベースの照合順序。 | 文字列 |
| createMode | データベースの作成モードを指定します。 既定値: 通常のデータベース作成。 コピー: 既存のデータベースのコピーとしてデータベースを作成します。 sourceDatabaseId は、ソース データベースのリソース ID として指定する必要があります。 セカンダリ: 既存のデータベースのセカンダリ レプリカとしてデータベースを作成します。 sourceDatabaseId は、既存のプライマリ データベースのリソース ID として指定する必要があります。 PointInTimeRestore: 既存のデータベースの特定の時点のバックアップを復元してデータベースを作成します。 sourceDatabaseId を既存のデータベースのリソース ID として指定し、restorePointInTime を指定する必要があります。 復旧: geo レプリケートされたバックアップを復元してデータベースを作成します。 sourceDatabaseId は、復元する回復可能なデータベース リソース ID として指定する必要があります。 復元: 削除されたデータベースのバックアップを復元してデータベースを作成します。 sourceDatabaseId を指定する必要があります。 sourceDatabaseId がデータベースの元のリソース ID である場合は、sourceDatabaseDeletionDate を指定する必要があります。 それ以外の場合、sourceDatabaseId は復元可能な破棄されたデータベース リソース ID である必要があり、sourceDatabaseDeletionDate は無視されます。 restorePointInTime は、以前の時点から復元するように指定することもできます。 RestoreLongTermRetentionBackup: 長期保持コンテナーから復元することでデータベースを作成します。 recoveryServicesRecoveryPointResourceId は、復旧ポイントのリソース ID として指定する必要があります。 DataWarehouse エディションでは、コピー、セカンダリ、RestoreLongTermRetentionBackup はサポートされていません。 |
'Copy' 'Default' 'OnlineSecondary' 'PointInTimeRestore' 'Recovery' 'Restore' 'RestoreExternalBackup' 'RestoreExternalBackupSecondary' 'RestoreLongTermRetentionBackup' 'Secondary' |
| elasticPoolId | このデータベースを含むエラスティック プールのリソース識別子。 | 文字列 |
| licenseType | このデータベースに適用するライセンスの種類。 免許が必要な場合はLicenseIncluded、免許を持っていてこのAzure ハイブリッド特典の資格がある場合はBasePriceです。 |
'BasePrice' 'LicenseIncluded' |
| longTermRetentionBackupResourceId | このデータベースの作成操作に関連付けられている長期保有バックアップのリソース識別子。 | 文字列 |
| maxSizeBytes | バイト単位で表されるデータベースの最大サイズ。 | int |
| minCapacity | 一時停止されていない場合、データベースが常に割り当てる最小限の容量 | int |
| readReplicaCount | 読み取りonly アプリケーションインテント接続のルーティング先となるデータベースに関連付けられている読み取りオンセカンダリ レプリカの数。 このプロパティは、Hyperscale Edition データベースに対してのみ設定できます。 | int |
| readScale | 有効化されている場合、接続文字列でアプリケーション意図が読み取り専用に設定されている接続は、読み取り専用の二次レプリカにルーティングされることがあります。 このプロパティは、Premium および Business Critical データベースでのみ設定できます。 | 'Disabled' 'Enabled' |
| recoverableDatabaseId | このデータベースの作成操作に関連付けられている回復可能なデータベースのリソース識別子。 | 文字列 |
| recoveryServicesRecoveryPointId | このデータベースの作成操作に関連付けられている復旧ポイントのリソース識別子。 | 文字列 |
| restorableDroppedDatabaseId | このデータベースの作成操作に関連付けられている、復元可能な削除されたデータベースのリソース識別子。 | 文字列 |
| restorePointInTime | 新しいデータベースを作成するために復元されるソース データベースの時点 (ISO8601形式) を指定します。 | 文字列 |
| sampleName | このデータベースの作成時に適用するサンプル スキーマの名前。 | 'AdventureWorksLT' 'WideWorldImportersFull' 'WideWorldImportersStd' |
| sourceDatabaseDeletionDate | データベースが削除された時刻を指定します。 | 文字列 |
| sourceDatabaseId | このデータベースの作成操作に関連付けられているソース データベースのリソース識別子。 | 文字列 |
| zoneRedundant | このデータベースがゾーン冗長かどうか。つまり、このデータベースのレプリカは複数の可用性ゾーンに分散されます。 | bool |
Sku
| Name | Description | Value |
|---|---|---|
| キャパシティ | 特定の SKU の容量。 | int |
| family | 同じ SKU に対して、サービスの世代が異なるハードウェアがある場合は、ここでキャプチャできます。 | 文字列 |
| name | SKU の名前 。通常は、文字 + 番号コード (P3 など)。 | string (必須) |
| size | 特定の SKU のサイズ | 文字列 |
| レベル | 特定の SKU のレベルまたはエディション (Basic、Premium など)。 | 文字列 |
TrackedResourceTags
| Name | Description | Value |
|---|
使用例
Azure Quickstart Templates
以下のAzureクイックスタートテンプレートはこのリソースタイプを展開します。
| Template | Description |
|---|---|
| このテンプレートを使えば、監査を有効にしたAzure SQLサーバーを展開し、Log Analytics(OMSワークスペース)に監査ログを書き込むことができます | |
|
SQL Serverとデータベースを作成 |
このテンプレートを使用すると、SQL Database とサーバーを作成できます。 |
|
Dedicated SQL pool with Transparent Encryption |
SQL Serverと専用SQLプール(旧SQL DW)を作成し、Transparent Data Encryptionを使用します。 |
|
新しいSQLエラスティックプールをデプロイ |
このテンプレートにより、新しいSQL Serverや割り当て可能な新しいSQLデータベースを備えた新しいSQLエラスティックプールを展開できます。 |
| ADLS Gen 2を有効にしたAzureストレージアカウント、ストレージアカウント用のリンクサービスを持つAzure Data Factoryインスタンス(展開されている場合はAzure SQL Database)、そしてAzure Databricksインスタンスを作成します。 テンプレートをデプロイするユーザーの AAD ID と ADF インスタンスのマネージド ID には、ストレージ アカウントのストレージ BLOB データ共同作成者ロールが付与されます。 また、Azure Key Vaultインスタンス、Azure SQL Database、ストリーミング利用のためのAzure Event Hubを展開するオプションもあります。 Azure Key Vaultが展開されると、テンプレートをデプロイするユーザーのData Factory管理IDとAADアイデンティティにKey Vault Secretsユーザーロールが付与されます。 | |
| このテンプレートを使用すると、カスタム Ambari DB と Hive Metastore の両方として機能する新しい SQL DB を使用して、既存の仮想ネットワークに HDInsight クラスターを作成できます。 既存の SQL Sever、ストレージ アカウント、VNET が必要です。 | |
|
プライベートエンドポイントの例 |
このテンプレートはAzure SQL Serverを指すプライベートエンドポイントの作成方法を示しています |
| このテンプレートは、Web アプリ、SQL Database、自動スケール設定、アラート ルール、App Insights をプロビジョニングします。 ウェブアプリ内でデータベース用の接続文字列を設定します。 | |
|
リモート デスクトップ 高可用性サービス |
このARMテンプレートのサンプルコードは、リモート デスクトップ Services 2019 Session Collectionラボを高可用性で展開します。 目標は、Windows Server 2019を用いて、完全に冗長で高可用性のリモート デスクトップ Servicesソリューションを展開することです。 |
|
Sonarqube Docker Web App on Linux with Azure SQL |
このテンプレートは、公式のSonarqubeイメージを使用し、Azure SQL ServerによってバックアップされたAzure App ServiceのWebアプリLinuxコンテナにSonarqubeをデプロイします。 |
| <マネージド・アイデンティティ、SQL Server、ΑΙWebアプリ> |
Azure インフラストラクチャを app + data + managed identity + monitoring にデプロイするための簡単な例 |
| このテンプレートは、Azure SQL Serverを指すプライベートエンドポイントを消費するWebアプリの作成方法を示しています |
Terraform (AzAPI プロバイダー) リソース定義
サーバー/データベースのリソースの種類は、次を対象とする操作でデプロイできます。
- リソース グループ
各 API バージョンで変更されたプロパティの一覧については、変更ログの
リソースの形式
Microsoftを作るために。SQL/servers/databasesリソースで、テンプレートに以下のTerraformを追加してください。
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Sql/servers/databases@2017-10-01-preview"
name = "string"
parent_id = "string"
location = "string"
tags = {
{customized property} = "string"
}
body = {
properties = {
autoPauseDelay = int
catalogCollation = "string"
collation = "string"
createMode = "string"
elasticPoolId = "string"
licenseType = "string"
longTermRetentionBackupResourceId = "string"
maxSizeBytes = int
minCapacity = int
readReplicaCount = int
readScale = "string"
recoverableDatabaseId = "string"
recoveryServicesRecoveryPointId = "string"
restorableDroppedDatabaseId = "string"
restorePointInTime = "string"
sampleName = "string"
sourceDatabaseDeletionDate = "string"
sourceDatabaseId = "string"
zoneRedundant = bool
}
sku = {
capacity = int
family = "string"
name = "string"
size = "string"
tier = "string"
}
}
}
プロパティ値
Microsoft。SQL/サーバー/データベース
| Name | Description | Value |
|---|---|---|
| 位置 | リソースの場所。 | string (必須) |
| name | リソース名 | string (必須) |
| parent_id | このリソースの親であるリソースの ID。 | リソースの種類:サーバーのID |
| properties | リソースのプロパティ。 | DatabaseProperties |
| sku | データベース SKU。 SKU の一覧は、リージョンとサポート プランによって異なる場合があります。 Azureリージョンでサブスクリプションで利用可能なSKU(SKU名、ティア/エディション、ファミリー、容量を含む)を特定するには、 Capabilities_ListByLocation REST APIまたは以下のいずれかのコマンドを使用します。azurecli<br />az sql db list-editions -l <location> -o table<br />````<br /><br />パワーシェルGet-AzSqlServerServiceObjective -Location < location> ```` |
Sku |
| tags | リソース タグ | タグ名と値のディクショナリ。 |
| 型 | リソースの種類 | 「Microsoft。Sql/servers/databases@2017-10-01-preview" |
DatabaseProperties
| Name | Description | Value |
|---|---|---|
| autoPauseDelay | データベースが自動的に一時停止されるまでの時間 (分)。 -1 の値は、自動一時停止が無効になっていることを意味します | int |
| catalogCollation | メタデータ カタログの照合順序。 | 'DATABASE_DEFAULT' 'SQL_Latin1_General_CP1_CI_AS' |
| 照合順序 | データベースの照合順序。 | 文字列 |
| createMode | データベースの作成モードを指定します。 既定値: 通常のデータベース作成。 コピー: 既存のデータベースのコピーとしてデータベースを作成します。 sourceDatabaseId は、ソース データベースのリソース ID として指定する必要があります。 セカンダリ: 既存のデータベースのセカンダリ レプリカとしてデータベースを作成します。 sourceDatabaseId は、既存のプライマリ データベースのリソース ID として指定する必要があります。 PointInTimeRestore: 既存のデータベースの特定の時点のバックアップを復元してデータベースを作成します。 sourceDatabaseId を既存のデータベースのリソース ID として指定し、restorePointInTime を指定する必要があります。 復旧: geo レプリケートされたバックアップを復元してデータベースを作成します。 sourceDatabaseId は、復元する回復可能なデータベース リソース ID として指定する必要があります。 復元: 削除されたデータベースのバックアップを復元してデータベースを作成します。 sourceDatabaseId を指定する必要があります。 sourceDatabaseId がデータベースの元のリソース ID である場合は、sourceDatabaseDeletionDate を指定する必要があります。 それ以外の場合、sourceDatabaseId は復元可能な破棄されたデータベース リソース ID である必要があり、sourceDatabaseDeletionDate は無視されます。 restorePointInTime は、以前の時点から復元するように指定することもできます。 RestoreLongTermRetentionBackup: 長期保持コンテナーから復元することでデータベースを作成します。 recoveryServicesRecoveryPointResourceId は、復旧ポイントのリソース ID として指定する必要があります。 DataWarehouse エディションでは、コピー、セカンダリ、RestoreLongTermRetentionBackup はサポートされていません。 |
'Copy' 'Default' 'OnlineSecondary' 'PointInTimeRestore' 'Recovery' 'Restore' 'RestoreExternalBackup' 'RestoreExternalBackupSecondary' 'RestoreLongTermRetentionBackup' 'Secondary' |
| elasticPoolId | このデータベースを含むエラスティック プールのリソース識別子。 | 文字列 |
| licenseType | このデータベースに適用するライセンスの種類。 免許が必要な場合はLicenseIncluded、免許を持っていてこのAzure ハイブリッド特典の資格がある場合はBasePriceです。 |
'BasePrice' 'LicenseIncluded' |
| longTermRetentionBackupResourceId | このデータベースの作成操作に関連付けられている長期保有バックアップのリソース識別子。 | 文字列 |
| maxSizeBytes | バイト単位で表されるデータベースの最大サイズ。 | int |
| minCapacity | 一時停止されていない場合、データベースが常に割り当てる最小限の容量 | int |
| readReplicaCount | 読み取りonly アプリケーションインテント接続のルーティング先となるデータベースに関連付けられている読み取りオンセカンダリ レプリカの数。 このプロパティは、Hyperscale Edition データベースに対してのみ設定できます。 | int |
| readScale | 有効化されている場合、接続文字列でアプリケーション意図が読み取り専用に設定されている接続は、読み取り専用の二次レプリカにルーティングされることがあります。 このプロパティは、Premium および Business Critical データベースでのみ設定できます。 | 'Disabled' 'Enabled' |
| recoverableDatabaseId | このデータベースの作成操作に関連付けられている回復可能なデータベースのリソース識別子。 | 文字列 |
| recoveryServicesRecoveryPointId | このデータベースの作成操作に関連付けられている復旧ポイントのリソース識別子。 | 文字列 |
| restorableDroppedDatabaseId | このデータベースの作成操作に関連付けられている、復元可能な削除されたデータベースのリソース識別子。 | 文字列 |
| restorePointInTime | 新しいデータベースを作成するために復元されるソース データベースの時点 (ISO8601形式) を指定します。 | 文字列 |
| sampleName | このデータベースの作成時に適用するサンプル スキーマの名前。 | 'AdventureWorksLT' 'WideWorldImportersFull' 'WideWorldImportersStd' |
| sourceDatabaseDeletionDate | データベースが削除された時刻を指定します。 | 文字列 |
| sourceDatabaseId | このデータベースの作成操作に関連付けられているソース データベースのリソース識別子。 | 文字列 |
| zoneRedundant | このデータベースがゾーン冗長かどうか。つまり、このデータベースのレプリカは複数の可用性ゾーンに分散されます。 | bool |
Sku
| Name | Description | Value |
|---|---|---|
| キャパシティ | 特定の SKU の容量。 | int |
| family | 同じ SKU に対して、サービスの世代が異なるハードウェアがある場合は、ここでキャプチャできます。 | 文字列 |
| name | SKU の名前 。通常は、文字 + 番号コード (P3 など)。 | string (必須) |
| size | 特定の SKU のサイズ | 文字列 |
| レベル | 特定の SKU のレベルまたはエディション (Basic、Premium など)。 | 文字列 |
TrackedResourceTags
| Name | Description | Value |
|---|
使用例
Terraformサンプル
MS SQL Database のデプロイの基本的な例。
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
azurerm = {
source = "hashicorp/azurerm"
}
}
}
provider "azurerm" {
features {
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
variable "administrator_login_password" {
type = string
description = "The administrator login password for the SQL server"
sensitive = true
}
data "azurerm_client_config" "current" {
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "server" {
type = "Microsoft.Sql/servers@2021-02-01-preview"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
administratorLogin = "mradministrator"
administratorLoginPassword = var.administrator_login_password
minimalTlsVersion = "1.2"
publicNetworkAccess = "Enabled"
restrictOutboundNetworkAccess = "Disabled"
version = "12.0"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
data "azapi_resource_id" "publicMaintenanceConfiguration" {
type = "Microsoft.Maintenance/publicMaintenanceConfigurations@2023-04-01"
parent_id = "/subscriptions/${data.azurerm_client_config.current.subscription_id}"
name = "SQL_Default"
}
resource "azapi_resource" "database" {
type = "Microsoft.Sql/servers/databases@2021-02-01-preview"
parent_id = azapi_resource.server.id
name = var.resource_name
location = var.location
body = {
properties = {
autoPauseDelay = 0
createMode = "Default"
elasticPoolId = ""
highAvailabilityReplicaCount = 0
isLedgerOn = false
licenseType = "LicenseIncluded"
maintenanceConfigurationId = data.azapi_resource_id.publicMaintenanceConfiguration.id
minCapacity = 0
readScale = "Disabled"
requestedBackupStorageRedundancy = "Geo"
zoneRedundant = false
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
MS SQL Database のデプロイの基本的な例。
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
azurerm = {
source = "hashicorp/azurerm"
}
}
}
provider "azurerm" {
features {
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
variable "administrator_login_password" {
type = string
description = "The administrator login password for the SQL server"
sensitive = true
}
data "azurerm_client_config" "current" {
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "server" {
type = "Microsoft.Sql/servers@2021-02-01-preview"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
administratorLogin = "mradministrator"
administratorLoginPassword = var.administrator_login_password
minimalTlsVersion = "1.2"
publicNetworkAccess = "Enabled"
restrictOutboundNetworkAccess = "Disabled"
version = "12.0"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
data "azapi_resource_id" "publicMaintenanceConfiguration" {
type = "Microsoft.Maintenance/publicMaintenanceConfigurations@2023-04-01"
parent_id = "/subscriptions/${data.azurerm_client_config.current.subscription_id}"
name = "SQL_Default"
}
resource "azapi_resource" "database" {
type = "Microsoft.Sql/servers/databases@2021-02-01-preview"
parent_id = azapi_resource.server.id
name = var.resource_name
location = var.location
body = {
properties = {
autoPauseDelay = 0
createMode = "Default"
elasticPoolId = ""
highAvailabilityReplicaCount = 0
isLedgerOn = false
licenseType = "LicenseIncluded"
maintenanceConfigurationId = data.azapi_resource_id.publicMaintenanceConfiguration.id
minCapacity = 0
readScale = "Disabled"
requestedBackupStorageRedundancy = "Geo"
zoneRedundant = false
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}