2

我正在尝试创建一个 powershell 脚本来在 2 个 azure SQL 数据库之间创建 azure 数据同步。我的成员数据库在另一个订阅中。

我需要设置“New-AzSqlSyncMember”命令类型的 -DefaultProfile。我不知道设置此参数的语法。

我当前没有 -DefaultProfile 的脚本如下所示:

New-AzSqlSyncMember -ResourceGroupName $resourceGroupName `
                    -ServerName $serverName `
                    -DatabaseName $databaseName `
                    -SyncGroupName $syncGroupName `
                    -Name $syncMemberName `
                    -MemberDatabaseType $memberDatabaseType `
                    -SyncDirection $syncDirection

我想使用 powershell 设置订阅字段的值,如下图所示使用 powershell:

设置数据同步会员订阅

4

1 回答 1

3

可能来自https://social.msdn.microsoft.com/Forums/en-US/4ad3dd3e-314a-4442-957f-da77c17ef85b/how-to-set-value-of-defaultprofile-of-type-iazurecontextcontainer-的交叉帖子in-newazsqlsyncmember?forum=azurescripting&prof=必需

Connect-AzAccount您想使用要在参数中使用的帐户的凭据进行调用,-DefaultProfile并将其存储在变量中。您可以使用该变量来设置参数:

$DefaultProfile = Connect-AzAccount <params> -SubscriptionId $SubscriptionId

New-AzSqlSyncMember <params> -DefaultContext $DefaultProfile

如果这引发无法从 a 转换为 a 的类型错误,则PSAzureContextIAzureContextContainer一个显式转换器可用

$DefaultProfile = Connect-AzAccount <params> -SubscriptionId $SubscriptionId

$Converter =  New-Object -TypeName Microsoft.Azure.Commands.Profile.Models.AzureContextConverter
$Container =  $converter.ConvertFrom($DefaultProfile, [Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer], $null, $true)

New-AzSqlSyncMember <params> -DefaultContext $Container
于 2020-02-14T20:38:35.130 回答