使用 powershell 或 azure cli 的 Azure Analysis Services 数据库模型备份
Azure Analysis Services database model backups using powershell or azure cli
我正在尝试使用以下 powershell 脚本备份 AAS 数据库模型。我发现很难,因为没有很好的 Microsoft 文档来实现这个解决方案。
$AnalysisServiceDatabase = "adventureworks"
$AnalysisServiceServer = "testanalysis"
$automationConnectionName = $ConnectionName
if (!$ConnectionName) {
$automationConnectionName = "AzureRunAsConnection"
}
$servicePrincipalConnection = Get-AutomationConnection -Name $automationConnectionName
Write-Output "Logging in to Azure..."
Add-AzureRmAccount `
-ServicePrincipal `
-TenantId $servicePrincipalConnection.TenantId `
-ApplicationId $servicePrincipalConnection.ApplicationId `
-CertificateThumbprint $servicePrincipalConnection.CertificateThumbprint
# Get PSCredential
$cred = Get-AutomationPSCredential -Name $AutomationCredentialName
Write-Output "Starting Backup..."
Backup-ASDatabase `
–backupfile ("backup." + (Get-Date).ToString("yyMMdd") + ".abf") `
–name $AnalysisServiceDatabase `
-server $AnalysisServiceServer `
-Credential $cred
有人能帮帮我吗?是否有其他方法可以自动备份 Azure 分析服务数据库?
我敢肯定,有几种方法可以解决这个问题。您的脚本非常接近。如果您按如下方式更改备份命令,我怀疑它会起作用:
Backup-ASDatabase `
–backupfile ("backup." + (Get-Date).ToString("yyMMdd") + ".abf") `
–name $AnalysisServiceDatabase `
-server "asazure://<full server URI here>" `
-ApplyCompression `
-ServicePrincipal `
-ApplicationId $servicePrincipalConnection.ApplicationId `
-TenantId $servicePrincipalConnection.TenantId `
-CertificateThumbprint $servicePrincipalConnection.CertificateThumbprint
如果您需要更多功能,例如恢复服务器和暂时打开当前 Azure 自动化 public IP 的防火墙,请改为执行以下操作。希望你能从两个例子中拼凑出你想要的脚本。
首先从这个 script (which processes an Azure Analysis Services database). Note the setup instructions here 创建一个 Runbook。
然后将第 100-123 行替换为来自第 162-215 行的 script 中的备份数据库代码(在 prem 上备份并恢复到 Azure Analysis Services)。并将 $Server 更改为 $amoAzureASServer。
我正在尝试使用以下 powershell 脚本备份 AAS 数据库模型。我发现很难,因为没有很好的 Microsoft 文档来实现这个解决方案。
$AnalysisServiceDatabase = "adventureworks"
$AnalysisServiceServer = "testanalysis"
$automationConnectionName = $ConnectionName
if (!$ConnectionName) {
$automationConnectionName = "AzureRunAsConnection"
}
$servicePrincipalConnection = Get-AutomationConnection -Name $automationConnectionName
Write-Output "Logging in to Azure..."
Add-AzureRmAccount `
-ServicePrincipal `
-TenantId $servicePrincipalConnection.TenantId `
-ApplicationId $servicePrincipalConnection.ApplicationId `
-CertificateThumbprint $servicePrincipalConnection.CertificateThumbprint
# Get PSCredential
$cred = Get-AutomationPSCredential -Name $AutomationCredentialName
Write-Output "Starting Backup..."
Backup-ASDatabase `
–backupfile ("backup." + (Get-Date).ToString("yyMMdd") + ".abf") `
–name $AnalysisServiceDatabase `
-server $AnalysisServiceServer `
-Credential $cred
有人能帮帮我吗?是否有其他方法可以自动备份 Azure 分析服务数据库?
我敢肯定,有几种方法可以解决这个问题。您的脚本非常接近。如果您按如下方式更改备份命令,我怀疑它会起作用:
Backup-ASDatabase `
–backupfile ("backup." + (Get-Date).ToString("yyMMdd") + ".abf") `
–name $AnalysisServiceDatabase `
-server "asazure://<full server URI here>" `
-ApplyCompression `
-ServicePrincipal `
-ApplicationId $servicePrincipalConnection.ApplicationId `
-TenantId $servicePrincipalConnection.TenantId `
-CertificateThumbprint $servicePrincipalConnection.CertificateThumbprint
如果您需要更多功能,例如恢复服务器和暂时打开当前 Azure 自动化 public IP 的防火墙,请改为执行以下操作。希望你能从两个例子中拼凑出你想要的脚本。
首先从这个 script (which processes an Azure Analysis Services database). Note the setup instructions here 创建一个 Runbook。
然后将第 100-123 行替换为来自第 162-215 行的 script 中的备份数据库代码(在 prem 上备份并恢复到 Azure Analysis Services)。并将 $Server 更改为 $amoAzureASServer。