Database Args
Example Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.storage.Account;
import com.pulumi.azure.storage.AccountArgs;
import com.pulumi.azure.mssql.Server;
import com.pulumi.azure.mssql.ServerArgs;
import com.pulumi.azure.mssql.Database;
import com.pulumi.azure.mssql.DatabaseArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new ResourceGroup("example", ResourceGroupArgs.builder()
.name("example-resources")
.location("West Europe")
.build());
var exampleAccount = new Account("exampleAccount", AccountArgs.builder()
.name("examplesa")
.resourceGroupName(example.name())
.location(example.location())
.accountTier("Standard")
.accountReplicationType("LRS")
.build());
var exampleServer = new Server("exampleServer", ServerArgs.builder()
.name("example-sqlserver")
.resourceGroupName(example.name())
.location(example.location())
.version("12.0")
.administratorLogin("4dm1n157r470r")
.administratorLoginPassword("4-v3ry-53cr37-p455w0rd")
.build());
var exampleDatabase = new Database("exampleDatabase", DatabaseArgs.builder()
.name("example-db")
.serverId(exampleServer.id())
.collation("SQL_Latin1_General_CP1_CI_AS")
.licenseType("LicenseIncluded")
.maxSizeGb(4)
.readScale(true)
.skuName("S0")
.zoneRedundant(true)
.enclaveType("VBS")
.tags(Map.of("foo", "bar"))
.build());
}
}
Transparent Data Encryption(TDE) With A Customer Managed Key(CMK) During Create
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.authorization.UserAssignedIdentity;
import com.pulumi.azure.authorization.UserAssignedIdentityArgs;
import com.pulumi.azure.storage.Account;
import com.pulumi.azure.storage.AccountArgs;
import com.pulumi.azure.mssql.Server;
import com.pulumi.azure.mssql.ServerArgs;
import com.pulumi.azure.keyvault.KeyVault;
import com.pulumi.azure.keyvault.KeyVaultArgs;
import com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;
import com.pulumi.azure.keyvault.Key;
import com.pulumi.azure.keyvault.KeyArgs;
import com.pulumi.azure.mssql.Database;
import com.pulumi.azure.mssql.DatabaseArgs;
import com.pulumi.azure.mssql.inputs.DatabaseIdentityArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new ResourceGroup("example", ResourceGroupArgs.builder()
.name("example-resources")
.location("West Europe")
.build());
var exampleUserAssignedIdentity = new UserAssignedIdentity("exampleUserAssignedIdentity", UserAssignedIdentityArgs.builder()
.name("example-admin")
.location(example.location())
.resourceGroupName(example.name())
.build());
var exampleAccount = new Account("exampleAccount", AccountArgs.builder()
.name("examplesa")
.resourceGroupName(example.name())
.location(example.location())
.accountTier("Standard")
.accountReplicationType("LRS")
.build());
var exampleServer = new Server("exampleServer", ServerArgs.builder()
.name("example-sqlserver")
.resourceGroupName(example.name())
.location(example.location())
.version("12.0")
.administratorLogin("4dm1n157r470r")
.administratorLoginPassword("4-v3ry-53cr37-p455w0rd")
.build());
var exampleKeyVault = new KeyVault("exampleKeyVault", KeyVaultArgs.builder()
.name("mssqltdeexample")
.location(example.location())
.resourceGroupName(example.name())
.enabledForDiskEncryption(true)
.tenantId(exampleUserAssignedIdentity.tenantId())
.softDeleteRetentionDays(7)
.purgeProtectionEnabled(true)
.skuName("standard")
.accessPolicies(
KeyVaultAccessPolicyArgs.builder()
.tenantId(current.tenantId())
.objectId(current.objectId())
.keyPermissions(
"Get",
"List",
"Create",
"Delete",
"Update",
"Recover",
"Purge",
"GetRotationPolicy")
.build(),
KeyVaultAccessPolicyArgs.builder()
.tenantId(exampleUserAssignedIdentity.tenantId())
.objectId(exampleUserAssignedIdentity.principalId())
.keyPermissions(
"Get",
"WrapKey",
"UnwrapKey")
.build())
.build());
var exampleKey = new Key("exampleKey", KeyArgs.builder()
.name("example-key")
.keyVaultId(exampleKeyVault.id())
.keyType("RSA")
.keySize(2048)
.keyOpts(
"unwrapKey",
"wrapKey")
.build());
var exampleDatabase = new Database("exampleDatabase", DatabaseArgs.builder()
.name("example-db")
.serverId(exampleServer.id())
.collation("SQL_Latin1_General_CP1_CI_AS")
.licenseType("LicenseIncluded")
.maxSizeGb(4)
.readScale(true)
.skuName("S0")
.zoneRedundant(true)
.enclaveType("VBS")
.tags(Map.of("foo", "bar"))
.identity(DatabaseIdentityArgs.builder()
.type("UserAssigned")
.identityIds(exampleUserAssignedIdentity.id())
.build())
.transparentDataEncryptionKeyVaultKeyId(exampleKey.id())
.build());
}
}
Import
SQL Database can be imported using the resource id
, e.g.
$ pulumi import azure:mssql/database:Database example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/databases/example1
Constructors
Functions
Properties
The create mode of the database. Possible values are Copy
, Default
, OnlineSecondary
, PointInTimeRestore
, Recovery
, Restore
, RestoreExternalBackup
, RestoreExternalBackupSecondary
, RestoreLongTermRetentionBackup
and Secondary
. Mutually exclusive with import
. Changing this forces a new resource to be created. Defaults to Default
.
The name of the Public Maintenance Configuration window to apply to the database. Valid values include SQL_Default
, SQL_EastUS_DB_1
, SQL_EastUS2_DB_1
, SQL_SoutheastAsia_DB_1
, SQL_AustraliaEast_DB_1
, SQL_NorthEurope_DB_1
, SQL_SouthCentralUS_DB_1
, SQL_WestUS2_DB_1
, SQL_UKSouth_DB_1
, SQL_WestEurope_DB_1
, SQL_EastUS_DB_2
, SQL_EastUS2_DB_2
, SQL_WestUS2_DB_2
, SQL_SoutheastAsia_DB_2
, SQL_AustraliaEast_DB_2
, SQL_NorthEurope_DB_2
, SQL_SouthCentralUS_DB_2
, SQL_UKSouth_DB_2
, SQL_WestEurope_DB_2
, SQL_AustraliaSoutheast_DB_1
, SQL_BrazilSouth_DB_1
, SQL_CanadaCentral_DB_1
, SQL_CanadaEast_DB_1
, SQL_CentralUS_DB_1
, SQL_EastAsia_DB_1
, SQL_FranceCentral_DB_1
, SQL_GermanyWestCentral_DB_1
, SQL_CentralIndia_DB_1
, SQL_SouthIndia_DB_1
, SQL_JapanEast_DB_1
, SQL_JapanWest_DB_1
, SQL_NorthCentralUS_DB_1
, SQL_UKWest_DB_1
, SQL_WestUS_DB_1
, SQL_AustraliaSoutheast_DB_2
, SQL_BrazilSouth_DB_2
, SQL_CanadaCentral_DB_2
, SQL_CanadaEast_DB_2
, SQL_CentralUS_DB_2
, SQL_EastAsia_DB_2
, SQL_FranceCentral_DB_2
, SQL_GermanyWestCentral_DB_2
, SQL_CentralIndia_DB_2
, SQL_SouthIndia_DB_2
, SQL_JapanEast_DB_2
, SQL_JapanWest_DB_2
, SQL_NorthCentralUS_DB_2
, SQL_UKWest_DB_2
, SQL_WestUS_DB_2
, SQL_WestCentralUS_DB_1
, SQL_FranceSouth_DB_1
, SQL_WestCentralUS_DB_2
, SQL_FranceSouth_DB_2
, SQL_SwitzerlandNorth_DB_1
, SQL_SwitzerlandNorth_DB_2
, SQL_BrazilSoutheast_DB_1
, SQL_UAENorth_DB_1
, SQL_BrazilSoutheast_DB_2
, SQL_UAENorth_DB_2
. Defaults to SQL_Default
.