Я сталкивался с той же проблемой ранее, когда делал что-то с базой данных Azure SQL. Вы можете попробовать это
1. Создать учетную запись для автоматизации
New-AzureRmAutomationAccount -ResourceGroupName $resourceGroupName -Name $automationAccountName -Location $location
2. Настройте учетную запись автоматизации для работы с
Set-AzureRmAutomationAccount -Name $automationAccountName -ResourceGroupName $resourceGroupName
3. Создать / импортировать Runbook
Здесь у нас уже есть готовая книга запусков, поэтому мы импортируем ее. Вот код Runbook
workflow runbookNameValue
{
inlinescript
{
$MasterDatabaseConnection = New-Object System.Data.SqlClient.SqlConnection
$MasterDatabaseConnection.ConnectionString = "ConnectionStringValue"
# Open connection to Master DB
$MasterDatabaseConnection.Open()
# Create command
$MasterDatabaseCommand = New-Object System.Data.SqlClient.SqlCommand
$MasterDatabaseCommand.Connection = $MasterDatabaseConnection
$MasterDatabaseCommand.CommandText = "Exec stored procedure"
# Execute the query
$MasterDatabaseCommand.ExecuteNonQuery()
# Close connection to Master DB
$MasterDatabaseConnection.Close()
}
}
4. Импорт
Import-AzureRMAutomationRunbook -Name $runBookName -Path $scriptPath -ResourceGroupName $resourceGroupName -AutomationAccountName $automationAccountName -Type PowerShell
Надеюсь, это поможет. Вместо использования Invoke-Sqlcmd используйте $MasterDatabaseCommand.ExecuteNonQuery()
, как я указал в runbook. Это будет работать