使用 SqlDatabase.createAsync() 创建时设置数据库属性
Set Database Properties when creating it with SqlDatabase.createAsync()
这是关于 Java 的 Azure 管理库的问题。
首先,一些背景:
Azure 管理 REST API 在 createorupdate 定义中提到了创建数据库和设置不同数据库属性的能力(页面示例):
{
"location": "southeastasia",
"sku": {
"name": "S0",
"tier": "Standard"
},
"properties": {
"createMode": "Default",
"collation": "SQL_Latin1_General_CP1_CI_AS",
"maxSizeBytes": 1073741824
}
}
我正在寻找如何执行来自 Azure Management Libraries for Java 的类似请求。
到目前为止,我已经找到了如何设置 "sku" 部分。这是通过使用适当的 ServiceObjectiveName 对象来完成的:
final SqlServer sqlServer = ...get SQL server object ...;
final Creatable<SqlDatabase> myDb = sqlServer.databases()
.define(targetDBName)
.withServiceObjective(ServiceObjectiveName.fromString("S0"));
...
myDb.createAsync(...); // create the db with sku S0
但我不知道如何设置属性。出于我的目的,我需要设置一些与示例中不同的属性。即,具体的 properties.maxSizeBytes
和 properties.autoPauseDelay
。
我什至找到了 .withMaxSizeBytes()
方法 here 但它被标记为已弃用,没有任何解释。
我还没有找到任何方法来设置 autoPauseDelay
。
通过挖掘 azure-sdk-for-java,很抱歉,我没有找到任何设置这些属性的方法。
我想到的复杂解决方法是使用资源部署。 java sdk:
支持
azure.deployments().define(deploymentName)
.withExistingResourceGroup(rgName)
.withTemplate(templateJson)
.withParameters("{}")
.withMode(DeploymentMode.INCREMENTAL)
.create();
下面是一个示例,可以为您提供一些指导:DeployUsingARMTemplate
对了,你可以尝试在Azure portal上创建一个数据库,然后在创建的最后一步下载模板:
这是关于 Java 的 Azure 管理库的问题。
首先,一些背景:
Azure 管理 REST API 在 createorupdate 定义中提到了创建数据库和设置不同数据库属性的能力(页面示例):
{
"location": "southeastasia",
"sku": {
"name": "S0",
"tier": "Standard"
},
"properties": {
"createMode": "Default",
"collation": "SQL_Latin1_General_CP1_CI_AS",
"maxSizeBytes": 1073741824
}
}
我正在寻找如何执行来自 Azure Management Libraries for Java 的类似请求。
到目前为止,我已经找到了如何设置 "sku" 部分。这是通过使用适当的 ServiceObjectiveName 对象来完成的:
final SqlServer sqlServer = ...get SQL server object ...;
final Creatable<SqlDatabase> myDb = sqlServer.databases()
.define(targetDBName)
.withServiceObjective(ServiceObjectiveName.fromString("S0"));
...
myDb.createAsync(...); // create the db with sku S0
但我不知道如何设置属性。出于我的目的,我需要设置一些与示例中不同的属性。即,具体的 properties.maxSizeBytes
和 properties.autoPauseDelay
。
我什至找到了 .withMaxSizeBytes()
方法 here 但它被标记为已弃用,没有任何解释。
我还没有找到任何方法来设置 autoPauseDelay
。
通过挖掘 azure-sdk-for-java,很抱歉,我没有找到任何设置这些属性的方法。
我想到的复杂解决方法是使用资源部署。 java sdk:
支持azure.deployments().define(deploymentName)
.withExistingResourceGroup(rgName)
.withTemplate(templateJson)
.withParameters("{}")
.withMode(DeploymentMode.INCREMENTAL)
.create();
下面是一个示例,可以为您提供一些指导:DeployUsingARMTemplate
对了,你可以尝试在Azure portal上创建一个数据库,然后在创建的最后一步下载模板: